English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

支持中文绘图R

Directory delle librerie di font di diversi sistemi:

  • Linux generalmente si trova /usr/share/fonts Sotto, possiamo utilizzare il comando fc-list per visualizzare:

    # 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
  • I font Windows si trovano in C:\Windows\Fonts\ apri direttamente per vederli.

  • I font macOS si trovano in /System/Library/Fonts e /Library/Fonts sotto la directory.

La libreria di font supportata dal sistema può essere visualizzata installando showtext:

> install.packages("showtext", repos = "https://mirrors.ustc.edu.cn/CRAN/") # Installa showtext
...
> font_files() # Visualizza i font
            path file family face version
1 /Library/Fonts Arial Unicode.ttf Arial Unicode MS Regular Version 1.01x
         ps_name
1 ArialUnicodeMS

Vista la presenza di ArialUnicodeMS, possiamo usarla:

pie3D(info, labels = names, explode = 0.1, main = "3D 图", family = "ArialUnicodeMS")

Carica il font personalizzato

A volte la libreria di font del sistema non è supportata molto bene. La funzione showtext() può caricare i nostri font personalizzati, scaricare il pacchetto ttf e aggiungerli utilizzando la funzione font_add().

Qui utilizziamo Source Han Sans, un font open-source lanciato da Adobe e Google.

Sito ufficiale:https://source.typekit.com/source-han-serif/cn/

Indirizzo GitHub:https://github.com/adobe-fonts/source-han-sans/tree/release/OTF/SimplifiedChinese

Aperto il link, selezionare uno di essi all'interno:

È possibile scaricare un font OTF, ad esempio SourceHanSansSC-Bold.otf, e posizionare il file nel percorso del file sorgente in esecuzione:

Il grafico a colonne utilizza la libreria di font:

# 载入 showtext
library(showtext);
# 第一个参数设置字体名称,第二个参数为字体库路径,同目录下,我们写字体库名就可以了
font_add("SyHei", "SourceHanSansSC-Bold.otf"); 
# 设置文件名,输出为 png
png(file = "w3codebox-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", "w3codebox", "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 = "3D图",family = "SyHei")
# 去掉字体
showtext_end();
# 关闭图形设备
dev.off();