Como exibir dois grupos de boxplots?

Tenho dois grupos de dados (x1 e x2 versus y1 e y2), que gostaria de exibir como dois grupos de boxplot

Eu tentei o seguinte, mas ele exibe os dados incorretos porque os vetores x1 e x2 (e y1 e y2) não têm o mesmo comprimento:

x1 <- c(2,3,4)
x2 <- c(0,1,2,3,4,5)

y1 <- c(3,4,5)
y2 <- c(1,2,3,4,5,6)

d0 <- matrix(c(x1, x2),  ncol=2)
d1 <- matrix(c(y1, y2),  ncol=2)

lmts <- range(d0,d1)

par(mfrow = c(1, 2))
boxplot(d0, ylim=lmts, xlab="x")
boxplot(d1, ylim=lmts, xlab="y")

Isso é o que mostra (é claro, eu queria que os bigodes do primeiro boxplot passassem de 2 para 4, de acordo com o intervalo de x1, etc.):

questionAnswers(2)

yourAnswerToTheQuestion