2017-02-03 14 views
0

私は、測定結果に対する実験のさまざまな設定の変更の影響を評価しています。特に、3つの設定があり、それぞれの設定の数が異なり、オプションも同じではありません。しかし、私は1つのプロット内のすべての設定に結果をプロットしたいと思います。1つのプロットで同じスケールの独立した棒グラフ

は具体的に、データは次のようになります。 multiple independent bar graphs on same scale

Setting Option Value 
Grp1 O1_1 0.2 
Grp1 O1_2 0.6 
Grp1 O1_3 0.5 
Grp2 O2_1 0.4 
Grp2 O2_2 0.6 
Grp2 O2_3 0.7 
Grp2 O2_4 0.3 
Grp3 O3_1 0.9 
Grp3 O3_2 0.6 

そして、私は次のようになりますプロット生成したいのですが(を上記の数字を反映していないモックアップ)

これを行う最善の方法は何ですか?

答えて

1

一つの方法:

library(ggplot2) 

read.table(text="Setting Option Value 
Grp1 O1_1 0.2 
Grp1 O1_2 0.6 
Grp1 O1_3 0.5 
Grp2 O2_1 0.4 
Grp2 O2_2 0.6 
Grp2 O2_3 0.7 
Grp2 O2_4 0.3 
Grp3 O3_1 0.9 
Grp3 O3_2 0.6", header=TRUE, stringsAsFactors=FALSE) -> df 

ggplot(df, aes(Option, Value)) + 
    geom_segment(aes(xend=Option, yend=0), size=15, color="#b5b5b5") + 
    scale_y_continuous(expand=c(0,0), breaks=c(0, 1), labels=c("0.0", "1.0"), limits=c(0, 1)) + 
    facet_wrap(~Setting, nrow=1, scales="free_x", strip.position="bottom") + 
    labs(x=NULL, y=NULL) + 
    theme_minimal() + 
    theme(panel.grid.major=element_blank()) + 
    theme(panel.grid.minor=element_blank()) + 
    theme(axis.line.y=element_line()) 

enter image description here

+0

ありがとうございます! 'facet_wrap'はまさに私が必要としていたものです。 – denbro42

関連する問題