Удалить метку оси Y из графика объекта XTS - PullRequest
4 голосов
/ 29 мая 2011

Вот код, генерирующий график объекта xts:

require("quantmod")
getSymbols("SPY")
plot(Cl(SPY))

, который дает следующий график:

graph

Можете ли вы удалить y-осевые значения (цены) из графика объекта XTS?

Подсказка : прохождение yaxt='n' не работает .

Ответы [ 3 ]

6 голосов
/ 29 мая 2011

Снять ось Y легко, но она также удаляет ось X. Пара вариантов:

1) Легко - использовать plot.zoo:

plot.zoo(Cl(SPY), yaxt="n", ylab="")

2) Хард-иш - взять кусочки от plot.xts:

plot(Cl(SPY), axes=FALSE)
axis(1, at=xy.coords(.index(SPY), SPY[, 1])$x[axTicksByTime(SPY)],
  label=names(axTicksByTime(SPY)), mgp = c(3, 2, 0))

3) Customize-ish - изменить plot.xts, поэтому axes= принимает вектор осей для построения и / или TRUE / FALSE.

1 голос
/ 29 мая 2011

В дополнение к ответу Джошуа, чтобы изменить plot.xts (), все, что вам нужно сделать, это изменить следующий раздел:

    if (axes) {
      if (minor.ticks) 
        axis(1, at = xycoords$x, labels = FALSE, col = "#BBBBBB")
      axis(1, at = xycoords$x[ep], labels = names(ep), las = 1,lwd = 1, mgp = c(3, 2, 0))
    #This is the line to change:
    if (plotYaxis) axis(2)
    }

и, очевидно, вы добавите параметр plotYaxis = TRUE в определение функции.

0 голосов
/ 02 февраля 2012

Вы также можете попытаться указать, что метки x и y как пустые или не содержат значений / символов. Попробуйте использовать термин xlab="" в вашей команде заговора: например plot(beers,ranking,xlab="",ylab="")

Не заключая ничего в кавычки, R ничего не отображает. Используя эту команду, вы также можете указать метки, чтобы сделать метку для оси X «пиво», используйте термин xlab="beer".

...