20

2つのデータセットがあり、1つはy範囲[min0:max0]で、もう1つはy範囲[min1:max1]であるとします。正しいy範囲[min(min0、min1):max(max0、max1)]を使用して、両方の箱ひげ図を1つのプロットに並べて配置するにはどうすればよいですか?

これが私が試したことです:

d0 <- matrix(rnorm(15), ncol=3)
d1 <- matrix(rnorm(15), ncol=3)

par(mfrow = c(1, 2))
boxplot(d0)
usr <- par("usr")
plot.new()
par(usr = usr)
boxplot(d1, add = TRUE)

しかし、それは最初のプロットをy範囲に保つだけであり、両方のプロットを絞りますが、私はそれらを正方形にしたいのです。

何か案は?

4

1 に答える 1

40
d0 <- matrix(rnorm(15), ncol=3)
d1 <- matrix(rnorm(15), ncol=3)

# Using base R graphics
lmts <- range(d0,d1)

par(mfrow = c(1, 2))
boxplot(d0,ylim=lmts)
boxplot(d1,ylim=lmts)

ベースグラフィックプロット

latticeまたはggplot2パッケージのいずれかによって、グリッドグラフィックを使用してこれを行う方法を検討することもできます。

ggplot2での1つの試みは次のとおりです。

# Using ggplot2
library(ggplot2)
d <- data.frame(d.type=c(rep(0,15),rep(1,15)),sub.type=rep(c('A','B','C'),10),val=rnorm(30))

p <- ggplot(d, aes(factor(sub.type), val)) 
p + geom_boxplot() + facet_grid(. ~ d.type)

ggplot2

そして格子状に:

# Using lattice
library(lattice)
bwplot(~ val|sub.type+d.type ,d)

格子プロット

グリッドベースのソリューションにより、制限を指定する必要がなくなることに注意してください。構造を指定すると、ソフトウェアが残りの作業を行います。

于 2011-07-21T10:32:07.010 に答える