ドッジ付きバーを持つ単純な水平バープロットを作成したいと思いますが、私は(水平)バーの順序を苦労しています。通常のバープロット(スタックまたはドッジド)を行うと、有用な因子レベルを設定し、対応する変数に従ってデータフレームを順序付けることで、バーの順序を簡単に制御できます。しかし、データフレームの順序付けは、水平プロットのバーの順番には何の影響も与えないようです。 私はいくつか同様の質問を見つけましたが、私の問題に対応しているかどうかはわかりません(プロットは少し違って見えます)。R ggplot水平ドッブ付きバープロット注文
df1 <- data.frame (year = as.factor(c(rep(2015,3),rep(2016,3),rep(2017,3))),
value = c(50,30,20,60,70,40,20,50,80),
set = rep(c("A","B","C"),3))
ggplot() + geom_bar(data= df1, aes(y=value, x=set, fill=year),
stat="identity", position="dodge") +
coord_flip()
私がしたいのは、上の2015バーと下の2017バーを示す水平プロットです。興味深いことに、coord_flip()を省略すると、バーはそのように並べられますが、水平になるようにプロットする必要があります。 プロットに変更されないデータをこのように注文:私は任意のヒント:)
パーフェクト、そんなにありがとう!私は因子レベルを変えようとしましたが、ガイド(fill = guide_legend(逆= TRUE))は本当にトリックでした。私は前に似たような問題を抱えていましたが、伝説の順序を変えるこの素敵な行を完全に忘れていました:) – Aki