分类变量的边际密度图

时间:2019-09-14 23:36:55

标签: r ggplot2 visualization

我正在寻找一个在外围/轴上具有边际密度图的图表。有没有一种简单的方法可以对分类数据执行此操作?

我尝试使用ggExtra的ggMarginal函数执行此操作,该函数对数值数据效果很好,但(根据我的理解)不是分类数据。为了简化重现性,我使用了mtcars数据集,并将圆柱体转换为因子。

140

鉴于传递'cyl'是一个因素,我得到了错误:

p <- ggplot(mtcars, aes(x=wt, y=as.factor(cyl), color=mpg, size=mpg)) +
  geom_point() +
  theme(legend.position="none")

p1 <- ggMarginal(p, type="histogram", size=10)

是否可以针对ggMarginal使用替代方法?另外,我也愿意使用其他任何方法。

期待您的建议!

谢谢!

1 个答案:

答案 0 :(得分:0)

如果指定margins =“ x”,则得到“ x”的边际图:

p1 <- ggMarginal(p, type="histogram", size=10, margins="x")
png(); print(p1); dev.off()

enter image description here

诚然不是您想要的,我也看不出为什么对分类变量不容易使用直方图边缘的原因。也许您应该要求维护者在下一个版本中进行增强?