R语言绘图如何支持中文
不同系统的字体库目录:
- Linux
一般在/usr/share/fonts下,我们可以使用fc-list命令查看:
#fc-list /usr/share/fonts/truetype/dejavu/DejaVuSerif-Bold.ttf:DejaVuSerif:style=Bold /usr/share/fonts/truetype/dejavu/DejaVuSansMono.ttf:DejaVuSansMono:style=Book /usr/share/fonts/truetype/dejavu/DejaVuSans.ttf:DejaVuSans:style=Book /usr/share/fonts/truetype/dejavu/DejaVuSans-Bold.ttf:DejaVuSans:style=Bold /usr/share/fonts/truetype/dejavu/DejaVuSansMono-Bold.ttf:DejaVuSansMono:style=Bold /usr/share/fonts/truetype/dejavu/DejaVuSerif.ttf:DejaVuSerif:style=Book
- Windows
字体在C:\Windows\Fonts\文件下,直接打开就能看到了。
- macOS
字体在/System/Library/Fonts和/Library/Fonts目录下
系统支持的字体库,可以通过安装showtext来查看:
>install.packages("showtext",repos="https://mirrors.ustc.edu.cn/CRAN/")#安装showtext ... >font_files()#查看字体 pathfilefamilyfaceversion 1/Library/FontsArialUnicode.ttfArialUnicodeMSRegularVersion1.01x ps_name 1ArialUnicodeMS
看到有ArialUnicodeMS,我们就可以用了:
pie3D(info,labels=names,explode=0.1,main="3D图",family="ArialUnicodeMS")
载入自定义字体
系统的字体库有时候不是支持的很好,showtext()函数可以载入我们自定义的字体,可以下载字体包ttf,然后使用font_add()函数添加。
这里我们使用思源黑体,思源黑体是Adobe与Google推出的一款开源字体。
下载地址:https://www.nhooo.com/fonts/626630.html
你也可以在网盘下载:https://pan.baidu.com/s/14cRhgYvvYotVIFkRVd71fQ提取码:e15r。
打开链接后,在里面选一个就好了:
可以下载个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();
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语言绘图支持中文的资料请关注毛票票其它相关文章!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。