require(highcharter)
## Loading required package: highcharter
## Registered S3 method overwritten by 'quantmod':
## method from
## as.zoo.data.frame zoo
require(dplyr)
## Loading required package: dplyr
##
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
##
## filter, lag
## The following objects are masked from 'package:base':
##
## intersect, setdiff, setequal, union
mapdata <- get_data_from_map(download_map_data("countries/co/co-all"))
glimpse(mapdata)
## Rows: 34
## Columns: 19
## $ `hc-group` <chr> "admin1", "admin1", "admin1", "admin1", "admin1", "admin~
## $ `hc-middle-x` <dbl> 0.31, 0.48, 0.47, 0.59, 0.44, 0.55, 0.45, 0.39, 0.30, 0.~
## $ `hc-middle-y` <dbl> 0.47, 0.26, 0.41, 0.68, 0.44, 0.47, 0.57, 0.69, 0.36, 0.~
## $ `hc-key` <chr> "co-sa", "co-ca", "co-na", "co-ch", "co-3653", "co-to", ~
## $ `hc-a2` <chr> "SA", "CA", "NA", "CH", "NU", "TO", "CQ", "HU", "PU", "A~
## $ labelrank <chr> "5", "5", "5", "5", "20", "5", "5", "5", "5", "5", "5", ~
## $ hasc <chr> "CO.SA", "CO.CA", "CO.NA", "CO.CH", "-99", "CO.TO", "CO.~
## $ `alt-name` <chr> "Saint Andrew and Providence", NA, NA, NA, NA, NA, NA, N~
## $ `woe-id` <chr> "2345070", "2345055", "2345065", "2345057", "-99", "2345~
## $ fips <chr> "CO17", "CO09", "CO20", "CO11", NA, "CO28", "CO08", "CO1~
## $ `postal-code` <chr> "SA", "CA", "NA", "CH", NA, "TO", "CQ", "HU", "PU", "AM"~
## $ name <chr> "San Andrés y Providencia", "Cauca", "Nariño", "Chocó", ~
## $ country <chr> "Colombia", "Colombia", "Colombia", "Colombia", "Colombi~
## $ `type-en` <chr> "Department", "Department", "Department", "Department", ~
## $ longitude <chr> "-81.7049", "-77.277", "-77.9777", "-76.7263", "-81.5928~
## $ `woe-name` <chr> "San Andrés y Providencia", "Cauca", "Nariño", "Chocó", ~
## $ latitude <chr> "12.5429", "2.61609", "1.60168", "5.38283", "3.97794", "~
## $ `woe-label` <chr> "San Andres y Providencia, CO, Colombia", "Cauca, CO, Co~
## $ type <chr> "Departamento", "Departamento", "Departamento", "Departa~
data_fake <- mapdata %>%
select(code = `hc-a2`) %>%
mutate(value = 1e5 * abs(rt(nrow(.), df = 10)))
glimpse(data_fake)
## Rows: 34
## Columns: 2
## $ code <chr> "SA", "CA", "NA", "CH", "NU", "TO", "CQ", "HU", "PU", "AM", "BL"~
## $ value <dbl> 90851.34, 44034.99, 93397.31, 153239.94, 87832.28, 73300.65, 919~
cities <- data.frame(
name = c("Bogotá", "Cali", "Medellín"),
lat = c(4.60971, 3.43722, 6.25184),
lon = c(-74.08175, -76.5225, -75.56359)
)
cities
## name lat lon
## 1 Bogotá 4.60971 -74.08175
## 2 Cali 3.43722 -76.52250
## 3 Medellín 6.25184 -75.56359
hc <- hcmap(
"countries/co/co-all",
data = data_fake,
value = "value",
joinBy = c("hc-a2", "code"),
name = "Fake data",
dataLabels = list(enabled = TRUE, format = "{point.name}"),
colorAxis = 0,
showInLegend = FALSE) %>%
hc_add_series(
data = cities,
color = hex_to_rgba("blue", alpha = 1),
type = "mappoint",
zIndex = 10,
name = "Cities",
minSize = "3%",
maxSize = "10%",
showInLegend = TRUE,
colorAxis = 1
) %>%
hc_mapNavigation(enabled = TRUE) %>%
hc_colorAxis(minColor = "white", maxColor = "red")
hc
#
# hc$x$hc_opts$colorAxis <- list(
# list(minColor = "white", maxColor = "red"),
# list(minColor = "yellow", maxColor = "blue")
# )
#
# hc