如何在 quantmod 图表中突出显示单个蜡烛?

nes*_*rbu 3 charts r xts quantmod

我找不到关于如何在 quantmod 图表中突出显示单个蜡烛的任何信息。这是一个示例代码:

library(quantmod)
getSymbols("AAPL", src="yahoo")
chart_Series(AAPL, subset="2007-01")
AAPL$show <- ifelse(as.Date(index(AAPL)) == as.Date("2007-01-09"), 1, 0)
add_TA(AAPL$show, col="red")
Run Code Online (Sandbox Code Playgroud)

我想做的是以某种方式突出显示 2007-01-09 上的那个栏。它可能是不同的蜡烛颜色、围绕它的矩形或不同的背景颜色。任何想法如何做到这一点?

Pie*_*nte 5

一种方法是更改​​主题颜色以匹配您要突出显示的点。在以下代码中,我将向上和向下颜色从单个名称更改为与数据长度匹配的颜色向量。为此,我正在使用您的AAPL$show矢量。我在AAPL$show+1向量中添加“1”的原因是我想将 0,1 向量转换为 1,2。然后用于在 之间进行选择c("red","cyan")

library(quantmod)                                                              
getSymbols("AAPL", src="yahoo")                                                
AAPL$show <- ifelse(as.Date(index(AAPL)) == as.Date("2007-01-09"), 1, 0)       

myTheme <- chart_theme()                                                       
myTheme$col$dn.col <- c("red","cyan")[AAPL$show+1]                             
myTheme$col$up.col <- c("white","cyan")[AAPL$show+1]                           
chart_Series(AAPL, subset="2007-01",theme=myTheme)                             

add_TA(AAPL$show, col="red")      
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明