Как округлить до ближайших 10 (или 100 или X)?

Я пишу функцию для построения графика данных. Я хотел бы указать красивое круглое число для оси y max , которое больше, чем максимальное значение набора данных.

В частности, мне нужна функция foo , которая выполняет следующее:

foo(4) == 5
foo(6.1) == 10 #maybe 7 would be better
foo(30.1) == 40
foo(100.1) == 110 

Я дошел до

foo <- function(x) ceiling(max(x)/10)*10

для округления до ближайшего 10, но это не работает для произвольных интервалов округления.

Есть ли лучший способ сделать это в R?

82
задан theforestecologist 5 May 2018 в 22:45
поделиться