如何在不切断的情况下使 R 中的 pie() 图表变大?
How to make a pie() chart larger in R without it cutting off?
我目前正在尝试使用 base R 中的 pie()
函数制作饼图。我怎样才能让它变大?我试过 radius = 1.2
,但这最终会在顶部和底部切断图表(见附图)。我怎样才能让它更大而不被切断?这是我的代码:
explicitProp <- c(as.numeric(summary(ts$explicit)[[2]]),
as.numeric(summary(ts$explicit)[[3]]))
pie(explicitProp,
labels = c("93.95%", "6.04%"),
col = c("#bc5090", "#003f5c"),
main = "Explicit vs. Clean Songs in Taylor Swift's Discography",
radius = 1
)
legend("topright", c("Clean", "Explicit"), fill = c("#bc5090", "#003f5c"))
此外,我知道饼图通常不受欢迎。然而,当比较两个结果时,它似乎是条形图更好的替代品。我是否错过了另一种可能更好地实现我的目标的可视化形式?
Pie Chart Cut Off w/Radius > 1
基本图形中的pie()
函数是一个简单的骨架图。手册页实际上建议您不要使用它:“饼图是一种非常糟糕的信息显示方式。”饼图的标准半径基于图中可用的 space。如果您的绘图 window 比垂直宽度宽,则半径将调整为垂直 space 减去默认边距。默认边距是底部、左侧、顶部、右侧的 c(5.1, 4.1, 4.1, 2.1) 行,以允许 space 用于标题和轴标签。这里有一些例子可以使事情更清楚。
par(mfrow=c(2, 2)) # Divide plot into 4 quarters
pie(c(7, 83, 33, 37, 14)) # Upper left, default plot, radius=0.8
pie(c(7, 83, 33, 37, 14), radius=1.05) # Upper right, slightly larger
par(mar=c(0, 0, 0, 0)) # Remove default margins
pie(c(7, 83, 33, 37, 14)) # Same plot as upper left, but no margins
pie(c(7, 83, 33, 37, 14), radius=1.05) # Same plot as upper right without margins
请注意,在右下方的 pid 图表中,一些标签被截断了。
我目前正在尝试使用 base R 中的 pie()
函数制作饼图。我怎样才能让它变大?我试过 radius = 1.2
,但这最终会在顶部和底部切断图表(见附图)。我怎样才能让它更大而不被切断?这是我的代码:
explicitProp <- c(as.numeric(summary(ts$explicit)[[2]]),
as.numeric(summary(ts$explicit)[[3]]))
pie(explicitProp,
labels = c("93.95%", "6.04%"),
col = c("#bc5090", "#003f5c"),
main = "Explicit vs. Clean Songs in Taylor Swift's Discography",
radius = 1
)
legend("topright", c("Clean", "Explicit"), fill = c("#bc5090", "#003f5c"))
此外,我知道饼图通常不受欢迎。然而,当比较两个结果时,它似乎是条形图更好的替代品。我是否错过了另一种可能更好地实现我的目标的可视化形式? Pie Chart Cut Off w/Radius > 1
基本图形中的pie()
函数是一个简单的骨架图。手册页实际上建议您不要使用它:“饼图是一种非常糟糕的信息显示方式。”饼图的标准半径基于图中可用的 space。如果您的绘图 window 比垂直宽度宽,则半径将调整为垂直 space 减去默认边距。默认边距是底部、左侧、顶部、右侧的 c(5.1, 4.1, 4.1, 2.1) 行,以允许 space 用于标题和轴标签。这里有一些例子可以使事情更清楚。
par(mfrow=c(2, 2)) # Divide plot into 4 quarters
pie(c(7, 83, 33, 37, 14)) # Upper left, default plot, radius=0.8
pie(c(7, 83, 33, 37, 14), radius=1.05) # Upper right, slightly larger
par(mar=c(0, 0, 0, 0)) # Remove default margins
pie(c(7, 83, 33, 37, 14)) # Same plot as upper left, but no margins
pie(c(7, 83, 33, 37, 14), radius=1.05) # Same plot as upper right without margins
请注意,在右下方的 pid 图表中,一些标签被截断了。