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 に対して個別に美学を定義しているため、 x 変数を fill 変数でgeom_text細分しているという事実を理解していません。productcategoryproduct

の呼び出しに追加fill=productすることで必要なグラフを取得できます。または、元の呼び出しでできるだけ多くの美学を定義しようとすることもできます。これにより、すべての geom がそれらの美学を自動的に取得し、定義する必要がある場合にのみ定義する必要があります。その特定の geom に固有のものです。aes()geom_textggplot()

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 に答える