14

棒グラフを重ねようとしていますggplot2

私の現在のコードは棒グラフを生成しますが、それらは互いに積み重なっています。私はこれを望んでいません。各バーの高さの違いを確認できるように、それらを重ねて表示したいと考えています。

コード:

library(ggplot2)
library(reshape)


x = c("Band 1", "Band 2", "Band 3")
y1 = c("1","2","3")
y2 = c("2","3","4")

to_plot <- data.frame(x=x,y1=y1,y2=y2)
melted<-melt(to_plot, id="x")

print(ggplot(melted,aes(x=x,y=value,fill=variable)) + geom_bar(stat="identity", alpha=.3))

スタック出力:

ここに画像の説明を入力

4

1 に答える 1

25

通話に追加position = "identity"してみてください。geom_barデフォルト?geom_barの位置はstack、ここで見ている動作です。

これを行うと、次のようになります。

print(ggplot(melted,aes(x=x,y=value,fill=variable)) + 
        geom_bar(stat="identity",position = "identity", alpha=.3))

ここに画像の説明を入力

そして、以下に示すように、おそらくposition = "dodge"より良い代替手段になるでしょう:

ここに画像の説明を入力

于 2012-10-23T16:48:37.897 に答える