Как отформатировать всплывающую подсказку в echarts4r - PullRequest
0 голосов
/ 16 мая 2018

Используя библиотеку 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 при наведении указателя мыши на ячейку в календаре. Как мне отформатировать значение, чтобы оно показывало my value is 1.2.

Я пытался понять, используя форматер в документации echarts, однако я не уверен, что делать с a, b, c, d

Ответы [ 3 ]

0 голосов
/ 16 мая 2018

Из виньетки (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))
                                    }
                                    ")
)

Этот подход показывает имя 'значение' - не обязательно и может быть удалено, если вы хотите показать только числовое значение. Это также округляет до ближайшей десятой - не уверен, если это было необходимо. Чтобы отобразить более одного значения, включите «
/» (без пробелов вокруг «br»), чтобы создать разрыв строки в отображении всплывающей подсказки (пример приведен в виньетке).

0 голосов
/ 07 марта 2019

обратите внимание на строку: e_heatmap (values ​​,ordin.system = "calendar")%>%

правильный вариант: e_heatmap (values ​​,ordin_system = "Calendar")%>%

0 голосов
/ 16 мая 2018

Я бы подошел к этому очень просто следующим образом:

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)

Если округление до первой цифры было не тем, что вы искали, дайте мне знать.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...