2016-04-15 22 views
0

我有四个向量,我正在尝试绘制:此图的问题。轴未正确

z1 <- rlnorm(100, meanlog=log(6), sdlog=0.3) 
z1 <-ceiling(z1) 
s4 <- seq(0,max(z1),0.1) 
d4 <- dlnorm(s4, meanlog=log(6), sdlog=0.3) 
hist(z1, prob=T, main="", col=rgb(1,0,0,alpha=0.1), ylim=c(0,max(d4)), xlim=c(0, max(z1))) 
par(new=TRUE) 

z2 <- rlnorm(100, meanlog=log(4.2), sdlog=log(2.1)) 
z2 <- ceiling((z2)+15) 
s5 <- seq(0,max(z2),0.1) 
d5 <- dlnorm(s5, meanlog=log(4.2), sdlog=log(2.1)) 
hist(z2, prob=T, main="", col=rgb(1,0,0,alpha=0.15), ylim=c(0,max(d5)), xlim=c(0, max(z2))) 
par(new=TRUE) 

m1 <- rlnorm(100, meanlog=2, sdlog=0.5) 
m1 <- ceiling((m1)+5) 
s1 <- seq(0,max(m1),0.1) 
d1 <- dlnorm(s1, meanlog=log(2), sdlog=0.5) 
hist(m1, prob=T, main="", col=rgb(0,1,0,alpha=0.1) , ylim=c(0,max(d1)), xlim=c(0, max(m1))) 
par(new=TRUE) 

m2 <- rnorm(100, mean=16, sd=5) 
m2 <- ceiling(m2) 
s2 <- seq(0,max(m2),0.1) 
d2 <- dnorm(s2, mean=16, sd=5) 
hist(m2, prob=T, main="", col=rgb(0,1,0,alpha=0.15) , ylim=c(0,max(d2)), xlim=c(0, max(m2))) 
par(new=TRUE) 

我有密谋这个graph问题。 轴不正确。

谢谢你的帮助。

+0

你想达到什么目的?你的代码的第一部分会抛出一个错误,因为'm1'没有被定义。你可能想要清理你的代码。 – epo3

+0

我会比较这些组,但该图的比例是错误的。 x轴现在是:5,10,10,20 .....并且不能读取y轴。 – Sisi

回答

0

使用的add=TRUE参数,可以将所有直方图绘制在同一轴上。

hist(z1, prob=T, main="", col=rgb(1,0,0,alpha=0.1), ylim=c(0,max(d4)), xlim=c(0, max(c(z1,z2, m1, m2)))) 
hist(z2, prob=T, main="", col=rgb(1,0,0,alpha=0.15), add=T) 
hist(m1, prob=T, main="", col=rgb(0,1,0,alpha=0.1), add=T) 
hist(m2, prob=T, main="", col=rgb(0,1,0,alpha=0.15), add=T)