我有一张4 * 10数据表,如下:
Total, var1, var2, var3
104, 35, 33, 36
106, 38, 32, 36
93, 34, 27, 32
98, 31, 32, 35
101, 34, 32, 35
106, 38, 32, 36
82, 32, 23, 27
100, 38, 30, 32
111, 34, 39, 38
89, 35, 27, 27
我希望生成一个boxplot
,其中每列绘制为一个单独的箱图,但在同一图表上。理想情况下,我还想对这些颜色进行颜色编码,并添加一些jitter
来显示各个数据点。
到目前为止,我已尝试在reshape2
上使用融合功能,但我没有太多运气。
我希望这很清楚,这给了我很多麻烦。谢谢你的帮助
答案 0 :(得分:0)
使用这样的数据:
> head(data)
Total var1 var2 var3
1 104 35 33 36
2 106 38 32 36
3 93 34 27 32
4 98 31 32 35
5 101 34 32 35
6 106 38 32 36
那么ggplot2
:
library(ggplot2)
ggplot(reshape2::melt(data), aes(x=variable, y=value, col=variable)) + geom_boxplot() + geom_jitter(height=0,col="black")
得到你:
当位置和轴标签足够时,我没有看到着色点,但无论如何。此外,如果您按变量对点进行着色,则会将其丢失在箱线图上,因此我将它们保持为黑色。