欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

R语言绘图如何支持中文

程序员文章站 2022-04-15 09:27:27
不同系统的字体库目录: linux一般在 /usr/share/fonts 下,我们可以使用 fc-list 命令查看:# fc-list/usr/share/fonts/truetype/deja...

不同系统的字体库目录:

  • linux

一般在 /usr/share/fonts 下,我们可以使用 fc-list 命令查看:

# fc-list
/usr/share/fonts/truetype/dejavu/dejavuserif-bold.ttf: dejavu serif:style=bold
/usr/share/fonts/truetype/dejavu/dejavusansmono.ttf: dejavu sans mono:style=book
/usr/share/fonts/truetype/dejavu/dejavusans.ttf: dejavu sans:style=book
/usr/share/fonts/truetype/dejavu/dejavusans-bold.ttf: dejavu sans:style=bold
/usr/share/fonts/truetype/dejavu/dejavusansmono-bold.ttf: dejavu sans mono:style=bold
/usr/share/fonts/truetype/dejavu/dejavuserif.ttf: dejavu serif:style=book
  • windows

字体在 c:\windows\fonts\ 文件下,直接打开就能看到了。

  • mac os

字体在 /system/library/fonts 和 /library/fonts 目录下

系统支持的字体库,可以通过安装 showtext 来查看:

> install.packages("showtext", repos = "https://mirrors.ustc.edu.cn/cran/") # 安装 showtext
...
> font_files() # 查看字体
  path  file  family face version
1 /library/fonts arial unicode.ttf arial unicode ms regular version 1.01x
  ps_name
1 arialunicodems

看到有 arialunicodems,我们就可以用了:

pie3d(info,labels = names,explode = 0.1, main = "3d 图",family = "arialunicodems")

载入自定义字体

系统的字体库有时候不是支持的很好, showtext() 函数可以载入我们自定义的字体,可以下载字体包 ttf,然后使用 font_add() 函数添加。

这里我们使用思源黑体,思源黑体是 adobe 与 google 推出的一款开源字体。

下载地址:

你也可以在网盘下载: https://pan.baidu.com/s/14crhgyvvyotvifkrvd71fq 提取码: e15r。

打开链接后,在里面选一个就好了:

R语言绘图如何支持中文

可以下载个 otf 字体,比如 sourcehansanssc-bold.otf,将该文件文件放在当前执行的代码文件中:

柱形图使用字体库:

# 载入 showtext
library(showtext);
# 第一个参数设置字体名称,第二个参数为字体库路径,同目录下,我们写字体库名就可以了
font_add("syhei", "sourcehansanssc-bold.otf");


# 设置文件名,输出为 png
png(file = "runoob-bar-cn.png")

cvd19 = c(83534,2640626,585493)
#加载字体
showtext_begin();
barplot(cvd19,
    main="新冠疫情条形图",
    col=c("#ed1c24","#22b14c","#ffc90e"),
    names.arg=c("中国","美国","印度"),
    family='syhei'     # 设置字体库
)
# 去掉字体
showtext_end();

R语言绘图如何支持中文

3d 饼图使用中文:

library(plotrix)
library(showtext);
# 第一个参数设置字体名称,第二个参数为字体库路径,同目录下,我们写字体库名就可以了
font_add("syhei", "sourcehansanssc-bold.otf");
# 数据准备
info = c(1, 2, 4, 8)

# 命名
names = c("google", "runoob", "taobao", "weibo")

# 涂色(可选)
cols = c("#ed1c24","#22b14c","#ffc90e","#3f48cc")

# 设置文件名,输出为 png
png(file = "3d_pie_chart.png")

#加载字体
showtext_begin();

# 绘制 3d 图
pie3d(info,labels = names,explode = 0.1, main = "我测试一下 syhei 字体",family = "syhei")

# 去掉字体
showtext_end();
# 关闭图形设备
dev.off();

R语言绘图如何支持中文

以上就是r语言绘图如何支持中文的详细内容,更多关于r语言绘图支持中文的资料请关注其它相关文章!