Неровная ось на графике R - PullRequest
       4

Неровная ось на графике R

3 голосов
/ 27 сентября 2011

Можно ли нарисовать неровную ось в R? Я знаю, что могу указывать метки в определенных местах, но я имею в виду, что я хочу, чтобы определенный участок моего графика был разложен. Например, представьте ось X, такую ​​как:

-10 -5 0 1 2 3 4 5 10

, где между каждым из вышеуказанных значений имеется равный интервал.

1 Ответ

3 голосов
/ 27 сентября 2011

Вам нужно будет составить фактор ваших уровней, сказать «fac», а затем построить график.Позже, используя axis () с метками = as.character (fac).

 dat <- data.frame(x=factor(c(-10 ,-5, 0, 1, 2, 3, 4, 5, 10)), y=1:9)

 with(dat, plot(x, y))   # a step-like plot
 with(dat, plot(as.numeric(x), y, type="p", xaxt="n")) # points instead of steps
 axis(1, at=1:9, labels=as.character(dat$x))           # the "irregular" axis

Подумав дальше о вопросе @Ben Bolker, можно также определить вспомогательное значение x для определения графика ".x = "и axis" at = "координата по горизонтали с последующим использованием unique(as.character(.)), примененным к" реальному x "в качестве аргумента" label = "для axis, как показано выше, но без необходимости построения фактора.При таком подходе возможна еще более сложная схема, где непрерывные значения в определенных диапазонах вспомогательной переменной могут использоваться для построения графиков, но усеченные значения создаются для меток на границах этих диапазонов.Я думаю, что дальнейшее обоснование и спецификация проекта потребуются перед созданием реализованного примера.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...