web-dev-qa-db-ja.com

Rの同じグラフに複数の箱ひげ図を配置するにはどうすればよいですか?

申し訳ありませんが、この質問のサンプルコードはありません。

私が知りたいのは、データフレーム内のさまざまな列/変数を表すRで複数のボックスプロットを並べて作成できるかどうかだけです。各箱ひげ図も単一の変数のみを表します。yスケールを(0,6)の範囲に設定したいと思います。

これが不可能な場合、単一の変数を使用して箱ひげ図を作成したいだけの場合、ggplot2のパネルオプションのようなものをどのように使用できますか?ありがとう!

理想的には、下の画像のようなものが必要ですが、ggplot2のように因子をグループ化する必要はありません。繰り返しますが、各箱ひげ図は完全に別個の単一の列を表します。

enter image description here

7
poeticpersimmon

_ggplot2_では、y軸にプロットするデータがすべて1つの列にある必要があります。

次に例を示します。

_set.seed(1)
df <- data.frame(
  value = runif(810,0,6),
  group = 1:9
)

df

library(ggplot2)
ggplot(df, aes(factor(group), value)) + geom_boxplot() + coord_cartesian(ylim = c(0,6)
_

enter image description here

ylim(0,6)は、y軸を0から6の間に設定します

データが列にある場合は、_reshape2_のmeltまたはgathertidyrを使用してデータを長い形式にすることができます。 (他の方法も利用できます)。

6
jalapic

reshape データを長い形式にすると

## Some sample data
dat <- data.frame(a=rnorm(100), b=rnorm(100), c=rnorm(100))

## Reshape data wide -> long
library(reshape2)
long <- melt(dat)
plot(value ~ variable, data=long)

enter image description here

5
pickle rick