微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在日期轴上以绘图方式添加事件符号

如何解决在日期轴上以绘图方式添加事件符号

我在向绘图区添加符号或指示符时遇到问题。我无法共享数据,所以我使用库存数据复制了该问题。

library(plotly)
library(quantmod)

getSymbols("AAPL",src='yahoo')

stock_df <- data.frame(Date_=index(AAPL),coredata(AAPL))[1:60,]

news <- data.frame(Date_ = as.Date(c("2007-01-05","2007-02-16","2007-03-09","2007-03-28")),event_ = c("Stock Split","New Iphone","New CEO","Earnings Call"))

stock_df <- dplyr::left_join(stock_df,news,by = c("Date_"))

stock_plot <- stock_df %>% plot_ly(x = ~Date_,type="candlestick",open = ~AAPL.Open,close = ~AAPL.Close,high = ~AAPL.High,low = ~AAPL.Low)  
                           layout(plot_bgcolor='black') %>% 
                           layout(paper_bgcolor='black')


stock_plot <- stock_plot %>% layout(title = "AAPL Candlestick Chart",xaxis = list(rangeslider = list(visible = FALSE)),yaxis = list(title ="Price"))

stock_plot

我要解决的问题是在给定数据上发生新闻事件时添加一个符号,例如实心圆圈。当用户将鼠标悬停在符号上时,将显示新闻事件文本。例如,在绘图下方的2007年1月5日将出现一个圆圈。当用户将鼠标悬停在圆圈上时,它将显示“股票分割”。

我试图建立起这一点,并从另一篇文章中尝试使用以下内容在事件发生的日期上添加一条垂直线:

event_dates <- stock_df[which(is.na(stock_df$event_) == FALSE),c("Date_","event_")]  
news_dates <- as.data.frame(event_dates) 
stock_plot %>% add_trace(data = news_dates,type = 'scatter',mode = 'lines',line = list(color = "Yellow"),name = '')

但是这没用。

我是数据可视化的新手,所以我希望社区中的某人可以提供帮助。如果有人可以在正确的方向上向我指出如何在新闻日期上添加圆圈,甚至只是一条垂直线,都将有所帮助。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐


Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其他元素将获得点击?
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。)
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbcDriver发生异常。为什么?
这是用Java进行XML解析的最佳库。
Java的PriorityQueue的内置迭代器不会以任何特定顺序遍历数据结构。为什么?
如何在Java中聆听按键时移动图像。
Java“Program to an interface”。这是什么意思?