2016-03-23 15 views
0

私はggplot2には本当に新しく勉強しようとしています。私は、長い形式で自分のデータを持っており、それは次のようになります。R ggplot2グループ化バープロット

Year School Type  Stat    Value 
2011 Middle School Tobacco Use   7.5 
2011 Middle School Cigarettes   4.3 
2011 Middle School Smokeless Tobacco 2.2 
2011 Middle School Hookahs    1 
2011 Middle School E-cigarettes  0.6 
2011 High School  Tobacco Use   24.3 
2011 High School  Cigarettes   15.8 
2011 High School  Smokeless Tobacco 7.3 
2011 High School  Hookahs    4.1 
2011 High School  E-cigarettes  1.5 

フルセットはここにある:http://pastebin.com/VUvWhC4x

私は何をしたいことは二つのグラフ、中学校用と高等学校のための1つを作るです。私はこれらのグループに簡単にサブセットを入れて、中学校に挑戦しましょう。私はここでデプリリー動詞を使用しています。私はグラフが見えるようにしたいどのような

middle = as.data.frame(filter(data,School.Type=="Middle School")) 

はそれぞれstatにx軸に沿って行くと、その後数年はその年の行に分けてグラフ化されますです。その後、次のstatと同じことに進みます。年は2011年から2014年です。

ggplot(middle, aes(factor(Stat), Value, fill = factor(Year)) + 
+geom_bar(stat="identity", position = "dodge") + 
+scale_fill_brewer(palette = "Set1") 

enter image description here

私はSTATで、その後からこれらのグループたいと思い生成:

enter image description here

私ができる最善のは、このコードです:それは非常に多く、このグラフをシミュレートしています各統計について2011年〜2014年何か案は?

答えて

3

あなたは近くにあります。Statをx軸にマッピングし、Valueをyにマッピングします。次に、Yearで塗りつぶし、棒を避ける(つまり横に並べる)ように指定します。

これは、あなたが望む出力として投稿したプロットにかなり近いです。

library(ggplot2) 

ggplot(middle, aes(x=Stat, y=Value, fill=factor(Year))) + 
    geom_bar(stat='identity', position ='dodge', color='black') + 
    scale_fill_brewer(palette=1) + 
    theme_classic() 

enter image description here

+0

パーフェクト!どうもありがとうございます!! :) – user137698

関連する問題