#r #highcharts #r-highcharter
Вопрос:
Есть ли способ, чтобы на моем графике highcharter был разделитель тысяч по оси y и всплывающая подсказка? Не уверен, есть ли отдельные способы сделать это или есть глобальный вариант. Точка данных всплывающей подсказки отформатирована таким образом, что там, где должна быть запятая, есть пробел. Я погуглил кучу и просто не могу этого понять. Любая помощь будет признательна.
код:
hc <- jobs %>% hchart(
'line', hcaes(x = new_time, y = employment), color = "#34657F") %>%
hc_title(
text = "Virginia",
align="left",
style = list(fontFamily = "Montserrat")) %>%
hc_subtitle(text= "Employment (in thousands) since March 2018 <br>",
align="left",
style = list(fontFamily = "Montserrat")) %>%
hc_xAxis(title = list(enabled = FALSE)) %>%
hc_yAxis(title = list(enabled = FALSE)) %>%
hc_chart(style = list(fontFamily = "Open Sans"))
hc
Спасибо!
Ответ №1:
Для этого вы можете использовать функции API и настроить эту подсказку так, как вам нравится: https://api.highcharts.com/highcharts/tooltip.formatter
Пример:
hc_tooltip(pointFormat = "<b>{point.name}</b>:<br>",
formatter = JS("function(){ return point.value * 100 '%'; }"))
Здесь вы можете найти статью, которая также может быть полезна, объясняющую, как работать с синтаксисом JavaScript Highcharts в R: https://www.highcharts.com/blog/tutorials/working-with-highcharts-javascript-syntax-in-r/?fbclid=IwAR3RJo3gPURMhJCtcs5o8LqAzOhT8EN957Vijo2njd41YocX-oYv0LPijSA
Комментарии:
1. спасибо — я видел эту документацию. У вас есть какие-нибудь более конкретные примеры, которые могли бы мне помочь? Я не знаю JavaScript, и мне трудно его понять. В идеале, был бы какой-то вариант, при котором вся диаграмма имела бы тысячу разделителей. Если нет, то тогда будет достаточно тысячи разделителей. Я просто не могу понять, как записать аргументы в hc_tooltip, чтобы это произошло.
Ответ №2:
Автор пакета jbkunst дает этот ответ здесь:
library(highcharter)
library(magrittr)
# set options
hcoptslang <- getOption("highcharter.lang")
hcoptslang$thousandsSep <- ","
options(highcharter.lang = hcoptslang)
# plot with commas
highchart() %>%
hc_add_series(data = round(rnorm(100)*10000))