[英]Centring bar labels in bar plots in r
如何將標簽在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)
barplot()
出barplot()
的返回值(通過閱讀?barplot
)。 在那里,我們發現條的中點由函數作為向量返回。 因此,分配返回的對象(這里是對象bar
),然后在調用axis()
使用它來定位刻度線是一件簡單的事情。
在axis()
調用中,請注意,我們同時指定了labels
參數和 at
參數,其中at
設置為存儲在bar
的bar中點。 las = 2
用於相對於軸旋轉標簽,而cex.axis = 0.6
用於減小標簽尺寸。
問題的第二部分由title()
和line
參數處理。 首先請注意,當您設置mar
參數時,您在“行”中設置邊距大小,因此第1面(底部)的邊距為15行。 title()
的line
參數指定要繪制軸標簽的邊距線。
將其與修改后的示例放在一起,我們得到:
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)
產生:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.