удаление оси x в error.bars - PullRequest
       13

удаление оси x в error.bars

3 голосов
/ 22 апреля 2011

У меня сегодня проблема, я хочу удалить ось X из следующего R-графика, но она просто не исчезнет. Я хочу, чтобы ось была сверху. Кто-нибудь может мне помочь?

library(psych)
temp <- describe(attitude)
error.bars(stats=temp,xaxt="n")
axis(3)

Ответы [ 3 ]

2 голосов
/ 22 апреля 2011

Как и в комментарии, вы можете редактировать исходный код.Самый простой способ - это использовать 'fix':

eb = fix(error.bars)

должен открыть редактор.Измените вызовы оси (1, .etc.) На ось (3, .etc.).Затем у вас есть новая функция с именем eb (), которая работает как error.bars.

Возможно, вы захотите настроить и некоторые другие вещи, например, заголовок, который ставится на осях при размещении сверху.

2 голосов
/ 22 апреля 2011

Вы можете использовать fixInNamespace() для редактирования функции error.bars() в psych NAMESPACE. Попробуйте:

fixInNamespace(error.bars)

Это откроет функцию в элементарном окне редактирования текста. Найдите axis() звонки и закомментируйте те, которые вам не нужны. Выйдите из редактора и R обновит функцию в NAMESPACE.

Затем попробуйте снова использовать функцию.

Кроме того, вы можете напечатать код для error.bars() в приглашении, скопировать его в текстовый редактор, изменить имя функции, скажем на my.error.bars, и закомментировать вызовы axis(), как и раньше. Сохраните функцию в файле и source() добавьте ее в сеанс или скопируйте и вставьте функцию. Затем используйте по своему желанию.

Третий вариант - выяснить, как error.bars() выполняет базовую прорисовку - посмотрите на код. Создайте этот сюжет самостоятельно, без топоров, затем позвоните error.bars() с add = TRUE.

0 голосов
/ 22 апреля 2011

Просто чтобы показать, что Гэвин имеет в виду, добавив = T:

group <- factor(rep(1:10,10))
y <- (1:10)[group] + rnorm(100)

grmean <- tapply(y,group,mean)
plot(1:10,grmean,xaxt="n",type="n")

unstacked <- unstack(data.frame(y,group),y~group)
error.bars(unstacked,add=T)
axis(3)

дает: enter image description here

...