Я пытаюсь показать «пробелы» в финансовых данных, используя функции построения графиков в отличном пакете Quantmod для R.
Обычно R позволяет отображать пробелы на графиках, используя значения NA, например:
x<-1:10
y<-2*x
y[4:7]<-NA
plot(x,y,type="l")
Я хотел бы сделать нечто подобное с графиками CandleChart R / Quantmod. Однако перед построением графика строки данных, содержащие NA, удаляются (в коде chartSeries есть команда na.omit), поэтому я не вижу, как это сделать.
Пример:
require(quantmod)
#Make some pretend data
x<-0:30
y<-100+20*sin(x)
y.open<-y[-length(y)]
y.close<-y[-1]
val<-as.xts(cbind(y.open,y.open+5,y.close-5,y.close,1000),order.by=as.POSIXct(paste("2011-01-",x[-1],sep='')))
colnames(val)<-c("Open","High","Low","Close","Volume")
#Plot this pretend data
candleChart(val,theme="white")
#Now try and make a "gap" in the middle of the data and plot it
val2<-val
val2[5:20,]<-NA
candleChart(val2,theme="white")
Что такое " правильный "способ сделать это?" Думаю, я мог бы перезаписать chartSeries своей собственной версией этой функции (идентичной, но без вызова na.omit ()), но это кажется довольно радикальным.
Есть ли возможность сделать что-то подобное? Мне не удалось найти в Google ничего полезного ...
Спасибо, fttb