设置quantmod :: chart_Series的背景色

时间:2018-11-24 19:45:33

标签: r quantmod

我有一个名为xts的{​​{1}}对象,其中包含OHLC的股价历史记录。函数quantmod :: chartSeries如下调用时,会在带有黑色背景的图表中绘制此数据:

adjPrices.xts

enter image description here

但是,具有相同选项的quantmod :: chart_Series创建带有白色背景的图表:

chartSeries(adjPrices.xts,
            subset = '2014-07-01::2015-07-01',
            type = 'bars',
            name = paste(symbol, 'Adjusted Prices'),
            TA = NULL)

enter image description here

我想将第二个绘图的背景颜色更改为黑色,并且我遵循this answer中建议的方法。 chart_theme()的颜色属性为

chart_Series(adjPrices.xts,
            subset = '2014-07-01::2015-07-01',
            type = 'bars',
            name = paste(symbol, 'Adjusted Prices'),
            TA = NULL)

这向我建议我可以将背景颜色设置为黑色,如下所示:

> chart_theme()$col
$`bg`
[1] "#FFFFFF"

$label.bg
[1] "#F0F0F0"

$grid
[1] "#F0F0F0"

$grid2
[1] "#F5F5F5"

$ticks
[1] "#999999"

$labels
[1] "#333333"

$line.col
[1] "darkorange"

$dn.col
[1] "red"

$up.col
[1] NA

$dn.border
[1] "#333333"

$up.border
[1] "#333333"

但是结果图表仍然具有白色背景: enter image description here 我还尝试如下定义myTheme <- chart_theme() myTheme$col$`bg` <- "black" chart_Series(adjPrices.xts, subset = '2014-07-01::2015-07-01', theme = myTheme, type = 'bars', name = paste(symbol, 'Adjusted Prices'), TA = NULL)

myTheme

,但是结果图表仍然具有白色背景。

使用chart_Series()时如何设置黑色背景?

1 个答案:

答案 0 :(得分:1)

目前您还不能。 github上有一个尚未解决的旧issue #25。一种解决方法是使用par调用R图形参数:

这将创建黑色背景。

par_old <- par(bg = "black")
chart_Series(SPY)
par(par_old)

其他一些解决方法正在使用rtsplot。基于R基本图形,并且可以选择绘制蜡烛图。通过par设置背景颜色:

rtsplot::rtsplot(SPY, type = "candle")

xts具有一个绘图环境plot.xts,但是它不能处理烛台。

Tidyquant对于ggplot2具有geom_candlestick,但是如果您使用ggplot2> 3.0,则这些操作现在将失败。查看此tidyquant github issue