如何在echarts4r中格式化工具提示

时间:2018-05-16 03:12:36

标签: r visualization

使用库library(tidyverse) map2_df(df, colnames(df), ~ c('', .y)[.x +1]) # A tibble: 2 x 2 # a b # <chr> <chr> #1 "" b #2 a "" ,我想在使用日历时格式化工具提示。

将另一行添加到John Coene's example

echarts4r

当鼠标悬停在日历中的单元格时,会显示值library(echarts4r) dates <- seq.Date(as.Date("2018-01-01"), as.Date("2018-12-31"), by = "day") values <- rnorm(length(dates), 20, 6) year <- data.frame(date = dates, values = values) year %>% e_charts(date) %>% e_calendar(range = "2018") %>% e_heatmap(values, coord.system = "calendar") %>% e_visual_map(max = 30) %>% e_title("Calendar", "Heatmap") %>% e_tooltip(trigger = "item", show = TRUE) 的工具提示。 如何格式化值,使其显示1.23456

我已尝试了解使用echarts文档中的formatter,但我不确定如何处理my value is 1.2

3 个答案:

答案 0 :(得分:2)

从小插图(https://github.com/JohnCoene/echarts4r/blob/master/vignettes/tooltip.Rmd)开始,看起来似乎需要在java脚本中进行格式化。一个可能的版本是

year %>%
  e_charts(date) %>%
  e_calendar(range = "2018") %>%
  e_heatmap(values, coord.system = "calendar") %>%
  e_visual_map(max = 30) %>%
  e_title("Calendar", "Heatmap") %>%
  e_tooltip(formatter = htmlwidgets::JS("
                                    function(params){
                                    return('value: ' +
parseFloat((params.value[1] * 10) / 10).toFixed(1))
                                    }
                                    ")
)

此方法显示名称&#39;值&#39; - 如果您只想显示数值,则无需删除。这也是最接近的十分之一 - 不确定是否需要。要显示多个值,请包含&#39;&lt; br&gt; /&#39; (在&#39; br&#39;周围没有空格)在工具提示显示中创建换行符(示例在插图中)。

答案 1 :(得分:0)

我会非常简单地按照以下方式处理:

year$values_rounded <- round(year$values, digits = 1)
year %>% 
  e_charts(date) %>% 
  e_calendar(range = "2018") %>% 
  e_heatmap(values_rounded, coord.system = "calendar") %>% 
  e_visual_map(max = 30) %>% 
  e_title("Calendar", "Heatmap") %>%
  e_tooltip(trigger = "item", show = TRUE)

如果没有找到你想要的第一个数字,请告诉我。

答案 2 :(得分:0)

请注意以下行: e_heatmap(values,coord.system =“ calendar”)%>%

正确的是: e_heatmap(values,coord_system =“ calendar”)%>%