我正在寻找一种方式来绘制与许多小提琴(列)的小提琴情节。问题是我的列都长短不一。例如,它是这样的:R - 小提琴情节与不同列
"V1" "V2"
"V1" 9 255.5
"V2" 432 286
"V3" 161 322.5
"V4" 320.5 277
"V5" 253.5 153.5
"V6" 301 155.5
"V7" 113 218.5
"V8" 341 394
"V9" 138 93.5
........
"V38166" 62 152
"V38167" NA 20.5
"V38168" NA 12
"V38169" NA 40.5
"V38170" NA 88
"V38171" NA 2.5
"V38172" NA 279.5
"V38173" NA 161.5
"V38174" NA 14.5
正如您所看到的,第一列中有一些NA,因为条目较少。请记住,也可能有更多列。问题是,我可以在任何栏目中有一个小提琴情节吗?
我已经试过这样:
jpeg("violinplot.jpg", width = 1000, height = 1000);
do.call(vioplot,c(statsDataFrame, list(names=nameList)))
dev.off()
statsDataFrame是完整的数据帧我上面张贴。但是,当我运行脚本时,出现以下错误:
Error in quantile.default(data, 0.25) :
missing values and NaN's not allowed if 'na.rm' is FALSE
Calls: do.call -> <Anonymous> -> quantile -> quantile.default
Execution halted
实质上是抱怨NA。我都试过na.rm = FALSE和na.rm = TRUE,像这样:
jpeg("stats/AllDistanceViolinPlot.jpg", width = 1000, height = 1000);
do.call(vioplot,c(columnViolinDistanceDataUnlist,na.rm=FALSE,list(names=tfListRow)))
dev.off()
和
jpeg("stats/AllDistanceViolinPlot.jpg", width = 1000, height = 1000);
do.call(vioplot,c(columnViolinDistanceDataUnlist,na.rm=TRUE,list(names=tfListRow)))
dev.off()
,但无济于事。
有没有人有任何建议如何做到这一点,或者如果可以做到?
谢谢你的帮助。
我通常只使用ggplot小提琴地块。 http://docs.ggplot2.org/current/geom_violin.html –
ggplot是否适用于不同的色谱柱长度? – intl