在quantmod图表中添加背景中的垂直线

时间:2016-02-07 00:26:10

标签: r quantmod

如何在后台中显示的quantmod中向垂直线添加垂直线?考虑这个例子:

library(quantmod)
symbol <- "AAPL"
cache <- new.env()
getSymbols(symbol, env=cache)
chartSeries(cache$AAPL, subset="last 3 months")
plot(addLines(v=10)) # Adds vertical line at tick 10.

问题是在刻度线10处添加垂直线现在会隐藏烛台中的灯芯:

Hidden candlestick wicks

我还尝试了addVLine中的qmao函数。它有效地做到了这一点:

c <- quantmod:::get.current.chob()
i <- index(c@xdata[endpoints(c@xdata, "months")])
plot(addTA(xts(rep(TRUE, length(i)), i), on=-1, col="grey"))

结果如下:

enter image description here

虽然我现在有背景线,但它们超宽而且非常突兀。我只是想在背景中以与网格线已经存在相同的方式。我怎样才能做到这一点?

注意:这个问题类似an existing one,但我在这里询问如何在背景中渲染垂直线

1 个答案:

答案 0 :(得分:3)

我没有查看源代码以了解其工作原理,但它似乎做了你想要的。基本上,您通过addLines参数将TA调用添加到chartSeries。无论如何,这通常是一件好事,因为它避免了为每个add*调用重新绘制图表。

chartSeries(cache$AAPL, subset="last 3 months", TA="addVo();addLines(v=10,on=-1)")

enter image description here