【问题标题】:label a dodged bar chart标记一个闪避的条形图
【发布时间】:2012-06-12 00:20:57
【问题描述】:

可能是因为外面太黑了,但是我看不到这个

Position geom_text on dodged barplot

处理我相当简单的数据框

fs <- data.frame(productcategory=c("c2","c2"), product=c("p4", "p5"), ms1=c(2,1))

plot <- ggplot(data=NULL)
plot + 
    geom_bar(data=fs, aes(x=productcategory, y=ms1, weight=ms1, fill=product),stat="identity", position="dodge") + 
    geom_text(data=fs, aes(label = ms1,  x = productcategory, y=ms1+0.2), position=position_dodge(width=1)))

我的绘图仍然在产品类别的“中间”显示标签,而不是在正确产品的上方。

看起来像这样,即使看起来很简单,但我完全坚持这个

因此,非常感谢任何提示如何在正确的条形上方获取标签。

汤姆

【问题讨论】:

    标签: r ggplot2


    【解决方案1】:

    因为您已经为每个几何图形单独定义了美学,geom_text 没有注意到您将 x 变量 productcategory 细分为填充变量 product 的事实。

    您可以通过在aes() 调用geom_text 中添加fill=product 来获得您想要的图形,或者您可以尝试在原始ggplot() 调用中定义尽可能多的美学,以便所有几何图形自动拾取这些美学,如果它们特定于特定的几何图形,您只需定义它们。

    plot2 <- ggplot(data=fs, aes(x=productcategory, y=ms1, fill=product)) +
      geom_bar(stat="identity", position="dodge") +
      geom_text(aes(label=ms1, y =ms1 + 0.2), position=position_dodge(width=1))
    print(plot2)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-01-09
      • 1970-01-01
      • 2014-02-01
      • 1970-01-01
      相关资源
      最近更新 更多