Эквивалент карты highcharter с {highcharter} - PullRequest
0 голосов
/ 07 мая 2020

Может ли кто-нибудь помочь мне сделать аналог этой карты с пакетом highcharter?
В документации не так много указаний ...

https://www.highcharts.com/maps/demo/data-class-ranges

Заранее большое спасибо!

Ответы [ 2 ]

1 голос
/ 08 мая 2020

Вы можете найти больше примеров на официальном сайте Highcharter здесь: http://jkunst.com/highcharter/highmaps.html

Они относятся к JavaScript, но вы можете использовать почти все из них в R: Все Свойства API Highcharts вы можете найти здесь: https://api.highcharts.com/highcharts/ и другие документы (включая colorAxis) вы можете найти здесь: https://www.highcharts.com/docs/index

1 голос
/ 07 мая 2020

Вы можете сделать это с помощью вспомогательной функции, встроенной в HighChater:

library(tidyverse)
library(viridis)
library(highcharter)

mapdata <- get_data_from_map(download_map_data("countries/us/us-all"))
set.seed(1234)

data_fake <- mapdata %>% 
  select(code = `hc-a2`) %>% 
  mutate(value = 1e5 * abs(rt(nrow(.), df = 10)))

color_classes(c(0, 100000, 200000, 500000))

hcmap("countries/us/us-all", data = data_fake, value = "value",
      joinBy = c("hc-a2", "code"), name = "Fake data",
      dataLabels = list(enabled = TRUE, format = '{point.name}'),
      borderColor = "#FAFAFA", borderWidth = 0.1,
      tooltip = list(valueDecimals = 2, valuePrefix = "$", valueSuffix = " USD")
      ) %>% 
  hc_colorAxis(
    minColor = "gray",
    maxColor = "yellow",
    dataClasses = color_classes(c(0, 100000, 200000, 500000))
  )

Важной частью является список color_classes. В этом примере у меня сделано 3 сегмента (0–100 тыс., 100–200 тыс. И 200–500 тыс.). Вы можете установить сами цвета для цветов в массиве цветов или каким-либо другим способом.

...