我想在工具提示中显示两个条形图的差异。我想我可以通过格式化程序功能访问这些值。但是我尝试的一切都行不通。这是我的代码:
highchart() %>%
hc_add_series(Marktvolumen$`2017`, type = "column", name = "2017") %>%
hc_add_series(Marktvolumen$`2018`, type = "column", name = "2018") %>%
hc_add_series(Marktvolumen$Aenderung, type = "column", name = "change", visible=FALSE, showInLegend=FALSE) %>%
hc_xAxis(categories = Marktvolumen$Familie) %>%
hc_plotOptions(series = list(showInLegend = TRUE, dataLabels = list(enabled = TRUE, color = "#FFFFFF"))) %>%
hc_tooltip(formatter = JS(paste0('function () {
return this.y[1] - this.y[0];
}')))
差异已经是图表对象,但不可见(Marktvolumen$Aenderung
)。对我而言,如果我通过系列对象显示差异或通过javascript计算它并不重要: - )
这是条形图:
谢谢!
答案 0 :(得分:0)
您正在使用this.y,当不共享工具提示时将使用此提示(这意味着每个列都有自己的工具提示)。 在您的情况下,应该共享工具提示!在函数hc_tooltip中,shared参数应为TRUE,因为两列(在每个“ Familie”中)应共享相同的工具提示。
然后,您可以按照以下说明使用变量this.points [i] .y:https://api.highcharts.com/highcharts/tooltip.formatter
下面是代码(没有Marktvolumen$Aenderung
):
Marktvolumen <- data.frame(c(72.451, 56280.439, 9020.455),
c(21.978, 59044.848, 9752.833),
c("Kuchen", "Riegel", "Süßgebäck"))
names(Marktvolumen) <- c('2017', '2018', "Familie")
highchart() %>%
hc_add_series(Marktvolumen$`2017`, type = "column", name = "2017") %>%
hc_add_series(Marktvolumen$`2018`, type = "column", name = "2018") %>%
hc_xAxis(categories = Marktvolumen$Familie) %>%
hc_plotOptions(series = list(showInLegend = TRUE,
dataLabels = list(enabled = TRUE,
color = "#FFFFFF"))) %>%
hc_tooltip(formatter = JS(paste0('function ()
{return "Änderung: " +
(this.points[1].y - this.points[0].y);}')
), shared = TRUE)
我希望这会有所帮助:)