2016-06-30 18 views
0

私は次のようになり、データ・ファイル...Rのggplot:STAT =「アイデンティティ」何らかの理由で動作しない

Rate <- runif(14, 0, 20) 
Day <- c("Sunday", "Monday", "Tuesday", 
     "Wednesday", "Thursday", "Friday", "Saturday", 
     "Sunday", "Monday", "Tuesday", 
     "Wednesday", "Thursday", "Friday", "Saturday") 
Grouper <- c(rep(1, 7), rep(2, 7)) 
df <- data.frame(Rate, Day, Grouper) 

を持っている...と私は2つのバーと棒グラフを作りたいです毎日:Grouper = 1の場合は1バー、Grouper = 2の場合は1バーです。 y値は数ではない、それはRate変数ですので、私はそれを動作させるためにstat = "identity"を使用する必要があります...

# Set max chart height 
maxlimit = max(df$Rate) * 1.1 
# Actual plot code 
ggplot(df, aes(Day, Rate)) + 
    geom_bar(stat = "identity") + 
    geom_bar(aes(fill = Grouper), position = "dodge") + 
    scale_y_continuous(limits = c(0, maxlimit)) + 
    theme_classic() 

...誰かが私に説明することができます私はまだエラーstat_count() must not be used with a y aesthetic.を取得していますなぜこのエラーが発生しているのですか?

+3

:ちょうど2番目の呼び出しので、このコードは動作しますstat=identity.への呼び出しを消去、geom_bar設定を再設定します。 – Roland

+0

ああ、分かりました。私はggplot2のドキュメントに書かれているスタイルに従っていると思っていましたが、間違っていました。 – mmyoung77

答えて

1

私の間違いはgeom_barを2度呼んでいました。私はこれをやろうと思っていたが、私は間違っていた。あなたが二回GEOMを呼び出していると、デフォルトをもう一度変更しない

ggplot(TSdata, aes(Day, Rate, group = Grouper, col = Grouper)) + 
    geom_bar(stat = "identity", aes(fill = Grouper), position = "dodge") + 
    scale_y_continuous(limits = c(0, maxlimit)) + 
    theme_classic() 
関連する問題