圆形浮点(x)到最接近的.5即> X

时间:2013-12-18 14:12:30

标签: r plot limit rounding

我试图为R图创建整齐的xlimylim值。我想:1)将xlim[2]舍入到0.5的最接近的倍数,该倍数大于值向量中的最大值,2)将xlim[1]舍入到最接近的0.5的倍数,小于值向量中的最小值。

E.g。

x <- c(1.2, 2, 3.4)
y <- c(0.7, 2, 3.7)

# The desired lim values are then
xlim <- c(1, 3.5)
ylim <- c(0.5, 4)
plot(x, y, xlim= xlim, ylim= ylim)

提前感谢任何提示!

3 个答案:

答案 0 :(得分:5)

pretty会计算这些值,您可以使用range来选择终点,

range(pretty(x))
[1] 1.0 3.5
range(pretty(y))
[1] 0.5 4.0

答案 1 :(得分:2)

xlim <- c(floor(min(x) * 2) / 2, 
          ceiling(max(x) * 2) / 2)
# [1] 1.0 3.5

ylim <- c(floor(min(y) * 2) / 2, 
          ceiling(max(y) * 2) / 2)
# [1] 0.5 4.0

诀窍是在四舍五入之前乘以2。然后将得到的值除以2。

答案 2 :(得分:0)

R包“base”具有制作整洁值的功能 - 它是“漂亮的”。

考虑使用此代码: 范围(漂亮(x))或 范围(相当(Y))