R はかなり新しいので、これがばかげた質問である場合は申し訳ありません。
多くのデータの棒グラフをプロットしたいと思います - おそらく 100 本の棒です。
色と間隔を使用して「グループ」を強調したいので、最初の 10 本のバーを青、小さなギャップ、次の 20 本を赤、小さなギャップなどにすることができます。
データはうまくプロットできますが、このように色付けやギャップを行うにはどうすればよいですか?
R はかなり新しいので、これがばかげた質問である場合は申し訳ありません。
多くのデータの棒グラフをプロットしたいと思います - おそらく 100 本の棒です。
色と間隔を使用して「グループ」を強調したいので、最初の 10 本のバーを青、小さなギャップ、次の 20 本を赤、小さなギャップなどにすることができます。
データはうまくプロットできますが、このように色付けやギャップを行うにはどうすればよいですか?
ggplot2
これは、@Arun のリンクで提供されているように、非常に簡単に実行できます。
バー間のスペースを設定する基本グラフィックスを使用すると、引数を使用できますspace=
(各バーの前にスペースを設定します)。引数col=
は function で色を変更しますbarplot()
。
以下は、20 本のバーと各 5 本のバーの間にスペースがある例です。
df<-sample(1:10,20,replace=T)
barplot(df,space=c(0,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1,0,0,0,0),
col=rep(c("red","blue","green","yellow"),each=5))
各グループの観測数が同じ場合、値のベクトルを行列に変換してからプロットできます (引数 を使用beside=TRUE
)。この場合、色を指定するだけで済みますが、バーは自動的にグループ化されます。
df2<-matrix(df,ncol=4)
barplot(df2,beside=TRUE,col=rep(c("red","blue","green","yellow"),each=5))