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

绘图 饼图 R

R fornisce una vasta gamma di librerie per implementare la funzione di disegno.

Il grafico a torta, noto anche come grafico a torta, è un grafico circolare diviso in più sezioni, utilizzato per descrivere la relazione relativa tra quantità, frequenza o percentuale.

R utilizza la funzione pie() per implementare il grafico a torta, il formato della sintassi è come segue:

pie(x, labels = names(x), edges = 200, radius = 0.8,
    clockwise = FALSE, init.angle = if(clockwise) 90 else 0,
    density = NULL, angle = 45, col = NULL, border = NULL,
    lty = NULL, main = NULL, ...)
  • x: vettore numerico, rappresenta l'area di ogni sezione.

  • labels: vettore di tipo character, rappresenta le etichette delle aree della sezione.

  • edges: questo parametro non è molto utile, indica il numero di lati del poligono (la contorno del cerchio è simile a un poligono con molti lati).

  • radius: raggio del grafico a torta.

  • main: titolo del grafico a torta.

  • clockwise: è un valore logico, utilizzato per indicare se le sezioni della torta del grafico a torta sono divise in senso orario.

  • angle: imposta l'inclinazione del trama di sfondo.

  • density: densità del trama di sfondo. Il valore predefinito è NULL.

  • col: rappresenta il colore di ogni sezione della torta, equivalente a un palleggiamento.

Per disegnare un grafico a torta è necessario fare queste preparazioni: vettore che riflette la quantità, etichette delle parti, colori delle parti (opzionale).

Di seguito disegnamo un grafico a torta semplice:

# 数据准备
info = c(1, 2, 4, 8)
# 命名
names = c("Google", "w3codebox", "Taobao", "Weibo")
# 涂色(可选)
cols = c("#ED1C24","#22B14C","#FFC90E","#3f48CC")
# 绘图
pie(info, labels=names, col=cols)

Eseguiamo il programma di disegno, verrà creato un file PDF (Rplots.pdf) nella directory corrente, aprendo il file è possibile vedere l'effetto grafico come segue:

Possiamo anche utilizzare le funzioni png(), jpeg(), bmp() per impostare il formato di file di output come immagine:

# 数据准备
info = c(1, 2, 4, 8)
# 命名
names = c("Google", "w3codebox", "Taobao", "Weibo")
# 涂色(可选)
cols = c("#ED1C24","#22B14C","#FFC90E","#3f48CC")
# Impostazione immagine di output
png(file='w3codebox-pie.png', height=300, width=300)
# 绘图
pie(info, labels=names, col=cols)

Di seguito configuriamo il titolo del grafico a torta, il carattere cinese deve essere configurato con il parametro family='GB1', può anche essere configurato un set di caratteri personalizzato, dettagli di riferimento:绘图 - 支持 中文 R

# 数据准备
info = c(1, 2, 4, 8)
# 命名
names = c("Google", "w3codebox", "Taobao", "Weibo")
# 涂色(可选)
cols = c("#ED1C24","#22B14C","#FFC90E","#3f48CC")
# 计算百分比
piepercent = paste(round(100*info/sum(info)), "%")
# 绘图
pie(info, labels=piepercent, main = "网站分析", col=cols, family='GB1')
# 添加颜色样本标注
legend("topright", names, cex=0.8, fill=cols)

如果要绘制 3D 的饼图,可以使用 plotrix 库的 pie3D() 函数,使用前我们需要先安装:

install.packages("plotrix", repos = "https://mirrors.ustc.edu.cn/CRAN/")
# 载入 plotrix
library(plotrix)
# 数据准备
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")
# 绘制 3D 图,family 需要设置你系统支持的中文字体库
pie3D(info,labels = names,explode = 0.1, main = "3D 图",family = "STHeitiTC-Light")

图片 生成 如下所示: