0

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

在闪避的条形图上定位 geom_text

处理我相当简单的数据框

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)))

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

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

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

汤姆

4

1 回答 1

4

因为您为每个 geom 单独定义了美学,geom_text所以并没有意识到您将 x 变量productcategory除以 fill 变量这一事实product

您可以通过添加fill=productaes()调用来获得所需的图形geom_text,或者您可以尝试在原始调用中定义尽可能多的美学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)
于 2012-06-12T00:36:51.083 回答