具有最小和最大标签的漂亮轴

时间:2012-05-29 16:32:17

标签: r axis-labels

我想绘制一个简单的条形图:

test <- data.frame(y=c(1,3,53,10,30,35,50), x=c(1:7))
barplot(test$y, names.arg=test$x)

resulting graph

我的问题是,如果最大值是某个“不合适”的数字,y轴的延伸距离不够远。更好的是,如果轴延伸超过最大值并完成一些大于最大值的“漂亮”值。

给定一个随机数据集(即这是一个函数),有一种简单的方法吗?

1 个答案:

答案 0 :(得分:6)

您可以使用pretty()range()的组合自动为ylim选择更好的设置:

test <- data.frame(y=c(1,3,53,10,30,35,50), x=c(1:7))
barplot(test$y, names.arg=test$x, 
        ylim = range(pretty(c(0, test$y))))

enter image description here

(感谢Gavin Simpson指出range(pretty(c(0, test$y)))range(pretty(c(0, max(test$y)))一样有效)