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

Suporte a Chines do R

diretórios de bibliotecas de fontes de diferentes sistemas:

  • O Linux geralmente está /usr/share/fonts abaixo, podemos usar fc-list Comando de visualização:

    # 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
  • As fontes do Windows estão na pasta C:\Windows\Fonts\ Arquivo, abra diretamente para ver:

  • As fontes do mac OS estão na pasta /System/Library/Fonts e /Library/Fonts na pasta.

A biblioteca de fontes suportadas pelo sistema pode ser verificada instalando o showtext:

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

Vemos ArialUnicodeMS, então podemos usá-lo:

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

Carregar a fonte personalizada

Às vezes, a biblioteca de fontes do sistema não é muito bem suportada, A função showtext() pode carregar nossas fontes personalizadas, pode baixar o pacote de fontes ttf e, em seguida, adicioná-lo usando a função font_add().

Aqui usamos o Source Han Sans, o Source Han Sans é uma fonte open-source lançada pela Adobe e pela Google.

Página oficial:https://source.typekit.com/source-han-serif/cn/

Endereço do GitHub:https://github.com/adobe-fonts/source-han-sans/tree/release/OTF/SimplifiedChinese

Depois de abrir o link, selecione um dentro dele:

Pode baixar uma fonte OTF, como SourceHanSansSC-Bold.otf,coloque o arquivo no mesmo diretório do arquivo de código em execução:

Uso de biblioteca de fontes em gráficos de barras:

# Carregar showtext
library(showtext);
# Primeiro parâmetro define o nome da fonte, o segundo parâmetro é o caminho da biblioteca de fontes, no mesmo diretório, escrevemos o nome da biblioteca de fontes
font_add("SyHei", "SourceHanSansSC-Bold.otf"); 
# Definir nome do arquivo, saída como png
png(file = "w3codebox-bar-cn.png")
cvd19 = c(83534,2640626,585493)
# Carregar fonte
showtext_begin();
barplot(cvd19,
    main="Gráfico de barras de pandemia de COVID-19",
    col=c("#ED1C24",#22B14C","#FFC90E",
    names.arg=c("China", "Estados Unidos", "Índia"),
    family='SyHei' # Definir biblioteca de fontes
)
# Remover fonte
showtext_end();

3D Uso de gráfico de pizza com chinês:

library(plotrix)
library(showtext);
# Primeiro parâmetro define o nome da fonte, o segundo parâmetro é o caminho da biblioteca de fontes, no mesmo diretório, escrevemos o nome da biblioteca de fontes
font_add("SyHei", "SourceHanSansSC-Bold.otf");
# Preparação de dados
info = c(1, 2, 4, 8)
# Nomear
names = c("Google", "w3codebox", "Taobao", "Weibo")
# Pintar (opcional)
cols = c("#ED1C24",#22B14C","#FFC90E","#3f48CC"
# Definir nome do arquivo, saída como png
png(file = "3d_pie_chart.png")
# Carregar fonte
showtext_begin();
# Desenhar 3DGráfico
pie3D(info, labels = names, explode = 0.1, main = "3DGráfico",family = "SyHei")
# Remover fonte
showtext_end();
# Fechar dispositivo gráfico
dev.off();