我无法使用xtsExtra调整多时间序列图的颜色。
这是最小例子的代码:
require("xtsExtra")
n <- 50
data <- replicate(2, rnorm(n))
my.ts <- as.xts(ts(data, start=Sys.Date()-n, end=Sys.Date()))
plot.zoo(my.ts, col = c('blue', 'green'))
plot.xts(my.ts, col = c('blue', 'green'))
plot.zoo命令产生
,
而来自xtsExtra包的plot命令导致
在第二个图中,两个时间序列很好地重叠,但似乎对col选项不敏感。
我使用的是xtsExtra软件包的最新版本0.0-1(rev.862)。
据我所知,xts和xtsExtra包被设计为zoo的扩展,并且应该使用相同的参数(加上许多其他参数)。即使我可以使用屏幕选项在plot.zoo中获得相同的叠加行为,我也无法真正使用它,因为调用plot.xts会导致我的问题在quantstrat包中(函数chart.forward.training和chart) .forward.testing例如)我不喜欢修改。 (顺便说一下,这些函数中的dev.new()也会给我带来麻烦。)
问题:为什么来自xtsExtra软件包的绘图似乎没有响应col =选项,如果修改它可以做些什么 对函数的调用不是一个真正的选择吗?
答案 0 :(得分:3)
Q1。如果您花时间阅读plot.xts
的帮助文本,您会发现该函数没有col
参数。连同在函数中似乎不允许部分匹配参数名称的事实,它解释了为什么plot.xts
它没有响应col =
。
与部分匹配的情况比较:
plot(x = 1:2, y = 1:2, type = "b")
; plot(x = 1:2, y = 1:2, ty = "b")
; &#34; TY&#34;匹配&#34;键入&#34;。
请参阅here:&#34;如果提供的参数的名称与正式参数的第一部分完全匹配,则认为这两个参数匹配&#34;。
Q2。相反,您可以使用colorset
参数:
&#34;要使用的调色板,默认设置为理性选择&#34; (colorset = 1:12
)。
plot.xts(my.ts, colorset = c('blue', 'green'))