Highcharter связанная карта и линейный сюжет - PullRequest
3 голосов
/ 04 октября 2019

Как я могу создать htmlwidget в R, который связывает пространственные точки с линейным графиком (т. Е. - при щелчке точки на карте рисуется линейный график)?

enter image description here

Насколько мне известно, в R один из единственных способов связать интерактивную HTML-карту с линейным графиком - через leaflet и leafletProxy() (например, - в этом примере).

Highmaps имеет этот пример JS (показанный выше), который связывает пространственные многоугольники с линейным графиком и выглядит адаптируемым для замены многоугольников для пространственных точек. Однако в пакете R highcharter, похоже, нет способа воссоздать этот пример.


Пример

В приведенном ниже примере целью являетсялинейный график 1 отображается при нажатии на город 1, а линейный график 2 отображается при нажатии на город 2.

Я открыт для реализации этого и в других R-пакетах, если они не требуют блестящего времени выполнения .

library(highcharter)

# map dataframe
cities <- data.frame(
  name = c("London", "Birmingham"),
  lat = c(51.507222, 52.483056),
  lon = c(-0.1275, -1.893611),
  z = c(1, 2)
)

# line plot data frame
city_pop <- data.frame(time = c(1:4),
                       cty1 = c(3:6),
                       cty2 = c(6:3))

# map with points
hcmap("countries/gb/gb-all", showInLegend = FALSE) %>%
  hc_add_series(data = cities, type = "mapbubble", maxSize = '10%') 

# line plot for city 1
hchart(city_pop, "line", hcaes(x = time, y = cty1))

# line plot for city 2
hchart(city_pop, "line", hcaes(x = time, y = cty2))
...