2つの異なる種の単一培養と混合培養の成長の違いを調べたデータがあります。さらに、データを明確にするためにグラフを作成しました。
エラーバーのある棒グラフが必要です。データセット全体はもちろん大きくなりますが、このグラフの場合、これはdata.frame
棒グラフの手段を使用したものです。
plant species means
Mixed culture Elytrigia 0.886625
Monoculture Elytrigia 1.022667
Monoculture Festuca 0.314375
Mixed culture Festuca 0.078125
このデータを使用して、でグラフを作成しましたggplot2
。ここplant
で、はx軸とmeans
y軸にあり、ファセットを使用して種を分割しました。
これは私のコードです:
limits <- aes(ymax = meansS$means + eS$se, ymin=meansS$means - eS$se)
dodge <- position_dodge(width=0.9)
myplot <- ggplot(data=meansS, aes(x=plant, y=means, fill=plant)) + facet_grid(. ~ species)
myplot <- myplot + geom_bar(position=dodge) + geom_errorbar(limits, position=dodge, width=0.25)
myplot <- myplot + scale_fill_manual(values=c("#6495ED","#FF7F50"))
myplot <- myplot + labs(x = "Plant treatment", y = "Shoot biomass (gr)")
myplot <- myplot + opts(title="Plant competition")
myplot <- myplot + opts(legend.position = "none")
myplot <- myplot + opts(panel.grid.minor=theme_blank(), panel.grid.major=theme_blank())
これまでのところ問題ありません。ただし、2つのファセットに2つの異なる水平線を追加したいと思います。そのために、私はこのコードを使用しました:
hline.data <- data.frame(z = c(0.511,0.157), species = c("Elytrigia","Festuca"))
myplot <- myplot + geom_hline(aes(yintercept = z), hline.data)
ただし、これを行うと、2つの水平線がプロットされる、2つの余分なファセットがあるプロットが得られます。代わりに、2つの新しいファセットを作成するのではなく、バーのあるファセットに水平線をプロットする必要があります。誰でもこれを解決する方法を考えています。
今作成したグラフを配置すると、より明確になると思います。