如何在x轴上添加不同的比例以及如何使我的图例变小

时间:2015-12-29 10:57:39

标签: r legend

我想升级基础R图的样式 enter image description here 正如你所看到的那样,我的x轴并没有覆盖所有东西,而且我的传奇与数字太大了。如何让我的x轴更大,我的传奇更小(我为未成熟,女性和男性制作了一些子集)

hist(Immature$Diameter, prob=TRUE ,breaks= seq(55,125, by=5), ylim=c(0,0.05), las=1, xlim=c(55,125), col=rgb(0,1,0,1/2), main="", xlab= "Diameter", ylab="Density")
hist(Female$Diameter, prob=TRUE, add=TRUE, breaks= seq(55,125, by=5), col=rgb(1,0,0,1/2))
hist(Male$Diameter, prob= T,breaks=seq(55,125, by=5), add=T, col=rgb(0,0,1,1/2)) #prob=T of freq=F (geeft probability densiteit weer) zelfde


x=seq(55,125,0.01)
curveImmature2<-curve(dnorm(x,mean=mean(Immature$Diam), sd=sd(Immature$Diam)), add= TRUE, col=rgb(0,1,0,1/2), lwd=2)
curveFemale2 <- curve(dnorm(x,mean=mean(Female$Diam), sd=sd(Female$Diam)), add= TRUE, col= rgb(1,0,0,1/2), lwd=2)
curveMale2 <- curve(dnorm(x, mean=mean(Male$Diam), sd=sd(Male$Diam)), add= TRUE, col=rgb(0,0,1,1/2), lwd=2)

legend(50,0.05,c('Immature', 'Female', 'Male'), lty = c(1,1,1), lwd=c(2.5,2.5,2.5), col=c(rgb(0,1,0,1/2),rgb(1,0,0,1/2) ,rgb(0,0,1,1/2) ))

1 个答案:

答案 0 :(得分:0)

由于您没有提供任何数据来运行代码,我将使用hist函数中的示例。让我们说这是你的代码

hist(islands)
legend("top", letters[1:3], lty=1, col=c("red", "blue", "green"))

使用xaxt参数hist?par)绘制没有x轴的直方图。然后添加自定义x轴,使用axis功能指定所需的刻度线和标签。使用cex参数legend?par)来缩小图例的大小。

hist(islands, xaxt="n")
axis(1, at=seq(0, 20000, 2000))
legend("top", letters[1:3], lty=1, col=c("red", "blue", "green"), cex=0.7)