我正在努力弄清楚如何在R中制作堆积条形图 .
首先,我正在使用的数据来自VCD包
data("Arthritis", package = "vcd")
现在,我只想绘制列 Improved 和 Treatment 的图形,显示两个条形,它们是 Treatment 列(Treated,Placebo)的两个结果,并且 Improved 列的结果堆叠在一起 .
我尝试了一些命令,但它一直给我一个错误说:
'height' must be a vector or a matrix
所以我做了以下工作,但它给了我关节炎数据集中所有列的所有结果 .
arth <- as.matrix(Arthritis)
barplot(arth,
main="Improvements in Treated vs Placebo",
col=c("green","yellow", "blue"),
xlab="Treatment",
ylab="Frequency")
我不知道该怎么办了 . 任何帮助或指导都会令人惊叹 .
2 回答
你的方法有些不对劲 . 我想你想要这样的东西:
您也可以尝试
ggplot
. 数据应该在data.frame
(无需转换为矩阵) . 默认geom_bar
计算每组中的案例数(无需制表) .