ggplot2パッケージを使用してRでパレート図を作成する方法に苦労しています。多くの場合、棒グラフやヒストグラムを作成するときは、アイテムをX軸で並べ替える必要があります。パレート図では、Y軸の値の降順で並べ替えられたアイテムが必要です。Y軸の値順に並べられたアイテムをggplotにプロットさせる方法はありますか?最初にデータフレームを並べ替えようとしましたが、ggplotがそれらを並べ替えているようです。
例:
val <- read.csv("http://www.cerebralmastication.com/wp-content/uploads/2009/11/val.txt")
val<-with(val, val[order(-Value), ])
p <- ggplot(val)
p + geom_bar(aes(State, Value, fill=variable), stat = "identity", position="dodge") + scale_fill_brewer(palette = "Set1")
データフレームの値は並べ替えられますが、出力は次のようになります。
ハドリーは、これにより、実際と予測を表示するためのはるかに優れたグラフィックが生成されることを正しく指摘しました。
ggplot(val, aes(State, Value)) + geom_bar(stat = "identity", subset = .(variable == "estimate"), fill = "grey70") + geom_crossbar(aes(ymin = Value, ymax = Value), subset = .(variable == "actual"))
これは次を返します:
しかし、それはまだパレート図ではありません。任意のヒント?