HighcharteR:plotband 和 plotline 不工作
HighcharteR: plotband and plotline not working
我正在尝试在 highcharteR 中绘制一个日值系列图,在图表中标记一条垂直线 (plotline) 和一段日期 (plotband)。
我研究了几个 SO 问题并找到了这个脚本,但我发现了以下问题:
1) plotband 未绘制
2)未绘制的倍数
3) xaxis 应该是以我不理解的方式转换日期。
我的可重现代码是:
library(highcharter)
t <- seq(from=as.Date('2017-01-01'), to=as.Date('2018-06-30'), by='days')
d <- runif(n = 546, min = 1, max = 10)
df <- data.frame(t,d)
highchart(type = 'stock')%>%
hc_add_series(name = "Value", type='line', color = "blue",data = df$d) %>%
hc_xAxis(categories = df$t,
type = 'date',
plotLines = list(
list(
label = list(text = "This is a plotLine"),
color = "#FF0000",
width = 5,
value = datetime_to_timestamp(as.Date('2017-01-10', tz = 'UTC'))
)
),
plotBands = list(
list(
label = list(text = "This is a plotBand"),
color = "rgba(100, 0, 0, 0.1)",
from = datetime_to_timestamp(as.Date('2017-02-01', tz = 'UTC')),
to = datetime_to_timestamp(as.Date('2017-02-10', tz = 'UTC'))
)
)
)
获得的输出是:
任何 help/advice 将不胜感激!
您可以尝试使用 XTS 包来完成此操作:
library(highcharter)
library(xts)
t <- seq(from = as.Date("2017-01-01"), to = as.Date("2018-06-30"), by = "days")
d <- runif(n = 546, min = 1, max = 10)
df <- data.frame(d)
df <- xts(df, order.by = t)
highchart(type = "stock") %>%
hc_add_series(name = "Value", type = "line", color = "blue", data = df$d) %>%
hc_xAxis(
categories = df$t,
type = "date",
plotLines = list(
list(
label = list(text = "This is a plotLine"),
color = "#FF0000",
width = 5,
value = datetime_to_timestamp(as.Date("2017-01-10", tz = "UTC"))
)
),
plotBands = list(
list(
label = list(text = "This is a plotBand"),
color = "rgba(100, 0, 0, 0.1)",
from = datetime_to_timestamp(as.Date("2017-02-01", tz = "UTC")),
to = datetime_to_timestamp(as.Date("2017-02-10", tz = "UTC"))
)
)
)
我正在尝试在 highcharteR 中绘制一个日值系列图,在图表中标记一条垂直线 (plotline) 和一段日期 (plotband)。 我研究了几个 SO 问题并找到了这个脚本,但我发现了以下问题:
1) plotband 未绘制 2)未绘制的倍数 3) xaxis 应该是以我不理解的方式转换日期。
我的可重现代码是:
library(highcharter)
t <- seq(from=as.Date('2017-01-01'), to=as.Date('2018-06-30'), by='days')
d <- runif(n = 546, min = 1, max = 10)
df <- data.frame(t,d)
highchart(type = 'stock')%>%
hc_add_series(name = "Value", type='line', color = "blue",data = df$d) %>%
hc_xAxis(categories = df$t,
type = 'date',
plotLines = list(
list(
label = list(text = "This is a plotLine"),
color = "#FF0000",
width = 5,
value = datetime_to_timestamp(as.Date('2017-01-10', tz = 'UTC'))
)
),
plotBands = list(
list(
label = list(text = "This is a plotBand"),
color = "rgba(100, 0, 0, 0.1)",
from = datetime_to_timestamp(as.Date('2017-02-01', tz = 'UTC')),
to = datetime_to_timestamp(as.Date('2017-02-10', tz = 'UTC'))
)
)
)
获得的输出是:
任何 help/advice 将不胜感激!
您可以尝试使用 XTS 包来完成此操作:
library(highcharter)
library(xts)
t <- seq(from = as.Date("2017-01-01"), to = as.Date("2018-06-30"), by = "days")
d <- runif(n = 546, min = 1, max = 10)
df <- data.frame(d)
df <- xts(df, order.by = t)
highchart(type = "stock") %>%
hc_add_series(name = "Value", type = "line", color = "blue", data = df$d) %>%
hc_xAxis(
categories = df$t,
type = "date",
plotLines = list(
list(
label = list(text = "This is a plotLine"),
color = "#FF0000",
width = 5,
value = datetime_to_timestamp(as.Date("2017-01-10", tz = "UTC"))
)
),
plotBands = list(
list(
label = list(text = "This is a plotBand"),
color = "rgba(100, 0, 0, 0.1)",
from = datetime_to_timestamp(as.Date("2017-02-01", tz = "UTC")),
to = datetime_to_timestamp(as.Date("2017-02-10", tz = "UTC"))
)
)
)