如何将x轴上的标签对中以匹配条形图?另外,如何将x轴标签进一步向下定位,使其不被x轴标签遮挡?谢谢!
par(mar= c(15,4,4,2) + 0.1)
barplot(58:1,xaxt="n",xlab="",ylab="Frequency", col=gray(5:0/5))
axis(1, labels=FALSE)
text(1:58, par("usr")[3] - 0.25, srt = 90, adj = 1,
labels = rep("Long Species Name",58), xpd = TRUE)
mtext(1, text = "Species", line=6)
Run Code Online (Sandbox Code Playgroud)
Rei*_*son 10
查看barplot()
(通过阅读?barplot
)的返回值.在那里我们发现条形的中点由函数作为向量返回.因此,分配返回的对象(此处为对象bar
)然后在调用中使用它axis()
来定位刻度线是一件简单的事情.
在axis()
通话,请注意,我们同时指定labels
参数和的at
说法,与at
被设置为分栏作为中期存储bar
.las = 2
用于相对于轴旋转标签,cex.axis = 0.6
用于减小标签尺寸.
你问题的第二部分是由title()
和line
论证来处理的.首先请注意,当您设置mar
参数时,您将在"行"中设置边距大小,因此第1面(底部)的边距为15行.该line
在争论title()
其边缘线的要绘制轴标签指定.
将这一点与修改后的示例完全相同,我们有:
op <- par(mar= c(15,4,4,2) + 0.1)
bar <- barplot(58:1, xaxt="n", xlab="", ylab="Frequency", col=gray(5:0/5))
axis(1, labels = paste("Long Species Name", 1:58), at = bar,
las = 2, cex.axis = 0.6)
title(xlab = "Species", line=11)
par(op)
Run Code Online (Sandbox Code Playgroud)
哪个产生: