【发布时间】:2021-04-12 21:50:44
【问题描述】:
我正在使用 R 编程语言。使用以下教程:https://plotly.com/r/time-series/ 和这个 stackoverflow 问题:How to plot multiple series/lines in a time series using plotly in R? 我能够制作交互式时间序列图:
library(xts)
library(ggplot2)
library(dplyr)
library(plotly)
library(lubridate)
#time series 1
date_decision_made = seq(as.Date("2014/1/1"), as.Date("2016/1/1"),by="day")
property_damages_in_dollars <- rnorm(731,100,10)
final_data <- data.frame(date_decision_made, property_damages_in_dollars)
final_data %>%
mutate(date_decision_made = as.Date(date_decision_made)) %>%
add_count(week = format(date_decision_made, "%W-%y"))
final_data$class = "time_series_1"
#time series 2
date_decision_made = seq(as.Date("2014/1/1"), as.Date("2016/1/1"),by="day")
date_decision_made <- format(as.Date(date_decision_made), "%Y/%m/%d")
property_damages_in_dollars <- rnorm(731,10,10)
final_data_2 <- data.frame(date_decision_made, property_damages_in_dollars)
final_data_2 %>%
mutate(date_decision_made = as.Date(date_decision_made)) %>%
add_count(week = format(date_decision_made, "%W-%y"))
final_data_2$class = "time_series_2"
#combine
data = rbind(final_data, final_data_2)
data$class = as.factor(data$class)
a = data %>%
group_by(class) %>%
plot_ly(x = ~ yday(date_decision_made)) %>%
add_lines(y = ~ property_damages_in_dollars,
color = ~ factor(class)
)
但是,我无法在此图表中添加自定义标题和轴:
with_titles = data %>%
group_by(class) %>%
plot_ly(x = ~ yday(date_decision_made)) %>% layout(title = 'damages vs time', xaxis = 'time', yaxis = 'damage') %>%
add_lines(y = ~ property_damages_in_dollars,
color = ~ factor(class)
)
with_titles
Error: $ operator is invalid for atomic vectors
尝试更改此图的 x 轴时会产生类似的错误:
with_titles_and_axis = data %>%
group_by(class) %>%
plot_ly(x = ~ yday(date_decision_made)) %>% layout(title = 'damages vs time', xaxis = xaxis =list(type="date",
tickformat='%d/%m/%Y',
showticklabels='True',
tick0= "2014-01-01",
dtick= "M12"), yaxis = 'damage') %>%
add_lines(y = ~ property_damages_in_dollars,
color = ~ factor(class)
)
#source: https://community.plotly.com/t/plotly-time-series-forecasting-modify-default-x-axis-and-y-axis-range/11390/2
谁能告诉我我做错了什么?是否也可以在悬停文本上显示日期? 谢谢
【问题讨论】:
标签: r time-series plotly data-visualization data-manipulation