在工具提示echarts4r中显示额外的变量

时间:2018-05-27 16:38:58

标签: r echarts

我正在尝试使用工具提示中的额外变量创建绘图,但无法理解如何制作它 例如,我想显示qseccylhp列 API的教程对我没有帮助 示例:

library(dplyr)
library(echarts4r)
mtcars %>%  
  tibble::rownames_to_column("model") %>% 
  e_charts(wt) %>% 
  e_scatter(mpg,bind=model) %>%
  e_tooltip(formatter = htmlwidgets::JS("
                                        function(params){
                                        return('<strong>' + params.name + 
                                        '</strong><br />wt: ' + params.value[0] + 
                                        '<br />mpg: ' +  params.value[1] +
                                        '<br />qsec: ' +  this.qsec )   }  "))

预期结果如下:
https://github.com/jbkunst/highcharter/issues/54

2 个答案:

答案 0 :(得分:4)

有点hacky,但是您可以传入一个字符串,其中包含您希望显示的数据作为数据名称,然后在函数内部解析它。例如,

mtcars %>%  
  tibble::rownames_to_column("model") %>%
  mutate(model = paste(model, qsec, sep = ",")) %>%
  e_charts(wt) %>% 
  e_scatter(mpg, bind = model) %>%
  e_tooltip(formatter = htmlwidgets::JS("
                                        function(params){
                                          var vals = params.name.split(',')
                                          return('<strong>' + vals[0] + 
                                          '</strong><br />wt: ' + params.value[0] + 
                                          '<br />mpg: ' +  params.value[1]) +
                                          '<br />qsec: ' + vals[1]}  "))

给你

enter image description here

答案 1 :(得分:1)

这是否达到了预期的效果?

library(dplyr)
library(echarts4r)
mtcars %>%  
  tibble::rownames_to_column("model") %>% 
  e_charts(wt) %>% 
  e_scatter(mpg, qsec, bind=model) %>% # pass qsec as size
  e_tooltip(formatter = htmlwidgets::JS("
                                        function(params){
                                        return('<strong>' + params.name + 
                                        '</strong><br />wt: ' + params.value[0] + 
                                        '<br />mpg: ' +  params.value[1] +
                                        '<br />qsec: ' +  params.value[2] )   }  ")) # size = third value
相关问题