Helper to create charts in tooltips.
Arguments
- accesor
A string indicating the name of the column where the data is.
- hc_opts
A list of options using the https://api.highcharts.com/highcharts/ syntax.
- width
A numeric input in pixels indicating the with of the tooltip.
- height
A numeric input in pixels indicating the height of the tooltip.
Details
This function needs to be used in the pointFormatter
argument
inside of hc_tooltip
function an useHTML = TRUE
option.
Examples
require(dplyr)
require(purrr)
require(tidyr)
#> Loading required package: tidyr
require(gapminder)
#> Loading required package: gapminder
data(gapminder, package = "gapminder")
gp <- gapminder %>%
arrange(desc(year)) %>%
distinct(country, .keep_all = TRUE)
gp2 <- gapminder %>%
nest(-country) %>%
mutate(
data = map(data, mutate_mapping, hcaes(x = lifeExp, y = gdpPercap), drop = TRUE),
data = map(data, list_parse)
) %>%
rename(ttdata = data)
#> Warning: All elements of `...` must be named.
#> Did you want `data = -country`?
gptot <- left_join(gp, gp2)
#> Joining, by = "country"
hc <- hchart(
gptot,
"point",
hcaes(
lifeExp,
gdpPercap,
name = country,
size = pop,
group = continent
)
) %>%
hc_yAxis(type = "logarithmic")
hc %>%
hc_tooltip(useHTML = TRUE, pointFormatter = tooltip_chart(accesor = "ttdata"))
hc %>%
hc_tooltip(useHTML = TRUE, pointFormatter = tooltip_chart(
accesor = "ttdata",
hc_opts = list(chart = list(type = "column"))
))
hc %>%
hc_tooltip(
useHTML = TRUE,
positioner = JS("function () { return { x: this.chart.plotLeft + 10, y: 10}; }"),
pointFormatter = tooltip_chart(
accesor = "ttdata",
hc_opts = list(
title = list(text = "point.country"),
xAxis = list(title = list(text = "lifeExp")),
yAxis = list(title = list(text = "gdpPercap"))
)
)
)
hc %>%
hc_tooltip(
useHTML = TRUE,
pointFormatter = tooltip_chart(
accesor = "ttdata",
hc_opts = list(
legend = list(enabled = TRUE),
series = list(list(color = "gray", name = "point.name"))
)
)
)