加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

制作成对的倒置直方图

发布时间:2020-12-14 04:51:15 所属栏目:百科 来源:网络整理
导读:我想在一组不同的测试中为两组制作成对的点图直方图,其中两组在y轴上以相反的方向显示.使用这个简单的数据集 dat - data.frame(score = rnorm(100),group = rep(c("Control","Experimental"),50),test = rep(LETTERS[1:2],each=50)) 我可以制作像这样的刻面
我想在一组不同的测试中为两组制作成对的点图直方图,其中两组在y轴上以相反的方向显示.使用这个简单的数据集

dat <- data.frame(score = rnorm(100),group = rep(c("Control","Experimental"),50),test = rep(LETTERS[1:2],each=50))

我可以制作像这样的刻面点图

ggplot(dat,aes(score,fill=group)) + facet_wrap(~ test) + geom_dotplot(binwidth = 1,dotsize = 1)

但我希望控制点指向下而不是向上.使用this question and answer,我可以制作一个看起来或多或少与我想要的直方图版本

ggplot() + 
  geom_histogram(data=subset(dat,group=="Experimental"),fill="Experimental",y= ..count..)) +
  geom_histogram(data=subset(dat,group=="Control"),fill="Control",y= -..count..)) +
  scale_fill_hue("Group")

但现在面子已经消失了.我知道我可以使用grid.arrange手动进行刻面,但这很费力(我的实际数据集有很多测试,而不仅仅是2),是否有更优雅的解决方案?

两个后续问题:

> geom_histogram正在给我一个警告,上面写着“当ymin!= 0时堆叠不明确”.有谁知道它是如何“没有明确定义”的?换句话说,这是我应该关注的事情吗?
>我更喜欢使用dotplot而不是直方图,但反转似乎不适用于dotplot.这是为什么?任何想法如何让它工作?

提前致谢!

解决方法

仔细阅读geom_dotplot将带来好处:

ggplot() +
  facet_wrap(~test) +
  geom_dotplot(data=subset(dat,fill="Experimental")) +
  geom_dotplot(data=subset(dat,fill="Control"),stackdir = "down") +
  scale_fill_hue("Group")

我不知道我头顶的stackdir论点.我不得不查一查!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读