2017-11-09 4 views
0

まず、位置=「塗りつぶし」機能について知っており、生データのプロットも成功しました。 thisしかし棒グラフをGGplot2で100%に累積している間に自分のカウントを指定できません

のように見えるこのコード

g <- ggplot(results, aes(Class)) 
g + geom_bar(aes(fill = Rating), position = "fill") 

、私はモデル化されたデータをプロットしたい場合、私はそれが協力してもらうことができないで 。ここで

は、データ

class <- (c(rep(1,4),rep(2,4), rep(3,4))) 
rating <- rep(c(1,2,3,4),3) 
proportion <- c(0.3304, 0.4241, 0.1305, 0.1150, 
       0.4119, 0.4016, 0.1026, 0.0839, 
       0.2831, 0.4279, 0.1493, 0.1397) 

df <- data.frame(class,proportion,rating) 
df$class <- as.factor(df$class) df$rating <- as.factor(df$rating) 

g <- ggplot(df, aes(class)) 
g + geom_bar(aes(fill = proportion), 
    position = "fill") 

の一例である。しかし、これは私をthis kind of image与えます。私はしばらくの間迷惑していますが、解決策は見つかりませんでした。

何人か知っている人がいますか?ヘルプは非常に高く評価されます。

+1

'?geom_bar'の2番目の文:"バーの高さでデータの値を表現したい場合は、代わりにgeom_colを使用してください。 " – joran

+0

ggplot(df、aes(x =クラス、y =比率、塗りつぶし=評価))+ geom_bar(位置= "塗りつぶし"、stat = "同一性") – caw5cv

答えて

1

proportionをy軸に明示的にマッピングし、定格に従って記入する必要があります。ジョランが指摘したように、geom_colまたは古いgeom_bar(stat = "identity")のいずれかを使用できます。

ggplot(df, aes(class, proportion, fill = as.factor(rating))) + 
    geom_col() 
関連する問題