【问题标题】:position_dodge and nudge_y togetherposition_dodge 和 nudge_y 在一起
【发布时间】:2019-06-29 08:15:16
【问题描述】:

我正在尝试使用 ggplot2 函数 geom_text 在条形图上方添加标签(字母)。我的条使用position=position_dodge() 分隔,因此我需要为新标签应用相同的条。但是,我还想使用 nudge_y 将标签与栏分开。如果我尝试同时使用两者,R 会抱怨我只能使用其中一个选项。我想做这样的事情:

Tukey.labels <- geom_text(data=stats,
                    aes(x=factor(Treatment2), y=x.mean, 
                        label=Tukey.dif),
                    size=4, nudge_y=3,            # move letters in Y
                    position=position_dodge(0.5)) # move letters in X

创建类似this image 的东西有没有人知道在同时做position_dodge 的同时将我的所有标签在Y 中移动相同距离的可能性?我在其他帖子中找不到答案

【问题讨论】:

  • 你试过vjust吗?
  • 我试过了,但它不会根据条的大小改变字母

标签: r ggplot2 geom-text


【解决方案1】:

如果没有可重现的示例,很难进行故障排除。希望这会有所帮助:

library(dplyr); library(ggplot2)
ggplot(mtcars %>% rownames_to_column("car") , 
       aes(as.factor(cyl), mpg, group = car)) + 
  geom_col(position = position_dodge(0.9)) +
  geom_errorbar(aes(ymin = mpg - wt,
                    ymax = mpg + wt),
                position = position_dodge(0.9)) +
  geom_text(aes(label = gear, y = mpg + wt), vjust = -0.5,
            position = position_dodge(0.9))

【讨论】:

  • 非常感谢它是完美的。以前没有用,因为我给出了正值。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-10-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多