小提琴情节和箱图中位数在使用ggplot2的同一数据集中没有重叠 - 这是我的错误?

时间:2017-09-24 17:50:01

标签: r ggplot2 boxplot violin-plot

我使用的数据集可以在这里下载:https://dropfile.to/aEWZ5U2

我想制作一个带有箱线图的小提琴情节。

我在数据集中使用了以下代码:

for (c in c('age','educ','hours')){
  print(ggplot(data, aes_string(y=c))+
    geom_violin(aes(x=c),trim=T, fill='grey', draw_quantiles = c(0.25,0.5,0.75)) +
    geom_boxplot(aes(x=c),width=.1, fill='skyblue', outlier.size = 0.7, outlier.color = 'red'))
}

这是3个情节。第一个看起来像预期的那样,但第二个和第三个不是因为中位数没有重叠(见图),尽管在我的理解中他们应该。我首先想到这可能与缺失值有关(因为这个数据集中有很多。但是如果我使用

na.omit(data)

而不是数据,不同的中位数也存在问题。在我的理解中,小提琴图应该像箱形图一样显示0.25,0.5和0.75四分位数。我的代码有什么问题,或者我对violing vs boxplots的理解不正确?

Violin Plot

0 个答案:

没有答案