我遇到一些标签问题。我在r中做条形图,我有点震惊,没有一个简单的命令只是将值放在顶部。无论如何,我希望这些标签在条形图中更加居中并缩短有效数字,以便它们适合条形图。我也很感激有关如何简化这一点的任何建议。
我尝试了选项(数字= 5),这对标签不起作用。我使用过文本(plot.name,tmp,labels = c(tmp)但是想尝试不使用它来使它更简单。我必须重新制作很多情节。
tmp = c(mean(1.0000001:100),mean(100.0000001:200), mean(200.0000001:300), mean(300.0000001:400))
barplot(tmp, names=c("site 1", "site 2", "site 3", "site 4") )
text(1:4, tmp, label=tmp, pos=2, srt=90)
答案 0 :(得分:8)
使用round(tmp)
可以轻松解决数字问题。正如@rawr建议的那样,使用barplot的输出来定位标签。最后,如果要在条形图上方绘制数字,请添加xpd=NA
以允许在绘图区域外绘制最高条形的数字。
bp = barplot(tmp, names=c("site 1", "site 2", "site 3", "site 4") )
# numbers above bars
text(x=bp, y=tmp, labels=round(tmp,0), pos=3, xpd=NA)
# numbers within bars
text(x=bp, y=tmp, labels=round(tmp,0), pos=1)