2017-03-09 12 views
0

以下のデータがあります。私は、それぞれの変数のカテゴリの平均のSEで棒グラフ(平均を示す棒のサイズ)を描きたいと思います。例えば、可変の高さは2つのカテゴリ(1と2)を持っています。私はggplotを使ってカテゴリに基づいてすべての変数のプロットを描きたいのですか?ggplot2で標準エラーの棒グラフ(平均値)を作成するにはどうすればよいですか?

Category Variable values 
1   height 6 
2   height 6 
3   weight 48 
2   age  67 
1   age  56 
2   age  43 
1   age  23 
1   height 6.5 
1   height 7 
2   age  89 
1   age  65 
+4

あなたはダイナマイトのプロットを求めていますか?代わりにボックスプロットや散布プロットを使う方が良いでしょう。参照:http://biostat.mc.vanderbilt.edu/wiki/Main/DynamitePlots –

+1

提供されたデータは、カテゴリの1つの標準偏差がないため、そのようなプロットをサポートしていません。そのリンクは、それが考慮される理由を説明する必要がありますそのプロット戦略を使用する貧弱な練習。 –

答えて

0

これを達成する方法はたくさんありますが、ここではデータを変換する必要はありません。補足として、私はダイナマイトプロットに関するコメントに同意します。代わりにgeom = "point"に変更することをおすすめしますか?

編集:謝罪。私は、あなたが2番目のカテゴリでもバーを区切らせるように頼んだことに気づいただけです。私は以下の例を修正しました。

library(ggplot2) 

dd <- data.frame(
    fac = c("age", "height", "weight"), 
    category = as.factor(rep(1:3, each = 3)), 
    x = rnorm(27, 10, 2) 
) 

ggplot(dd, aes(x = fac, y = x, fill = category)) + 
    geom_bar(stat = "summary", fun.y = "mean", 
      position = position_dodge(width = 0.9)) + 
    geom_pointrange(stat = "summary", fun.data = "mean_se", 
        position = position_dodge(width = 0.9)) 

enter image description here

関連する問題