我有百分比数据。我想使用 ggplot 创建一个图表,但我无法让它像我想要的那样工作。由于数据非常倾斜,因此简单的堆叠列效果不佳,因为不会显示非常小的值。这是一个样本集:
Actual Predicted
a 0.5 5
b 9.5 5
c 90 90
左边是excel图,右边是R-ggplot
问题在于,在 R 中,列的堆叠并不均匀。
这是我的 R 代码:
a = c("a","b","c","a","b","c")
b = c("Actual","Actual","Actual","Predicted","Predicted","Predicted")
c = c(0.5,2.5,97,0.2,2.2,97.6)
c = c+1
dat = data.frame(Type=a, Case=b, Percentage=c)
ggplot(dat, aes(x=Case, y=Percentage, fill=Type)) + geom_bar(stat="identity") + scale_y_log10()
*在 Excel 和 RI 中都使用 +1 来处理数字 0-1,因此 y 轴稍微偏离
如果我使用:
ggplot(dat, aes(x=Case, y=Percentage, fill=Type)) + geom_bar(stat="identity",position = "fill") + scale_y_log10()
总高度匹配,但是两个蓝色部分的大小不匹配(它们都是 90%)