Использование листовки для составления сюжета с общим количеством - PullRequest
0 голосов
/ 04 марта 2020

Я пытаюсь использовать пакет листовок в R для создания интерактивного визуала, который помогает мне визуализировать следующие данные:

      Provice      Lat     Long     Date Confirmed Recovered Deaths
1       Anhui 31.82570 117.2264 20-01-22         1         0      0
2       Anhui 31.82570 117.2264 20-01-23         9         0      0
3       Anhui 31.82570 117.2264 20-01-24        15         0      0
4       Anhui 31.82570 117.2264 20-01-25        39         0      0
5       Anhui 31.82570 117.2264 20-01-26        60         0      0
6       Anhui 31.82570 117.2264 20-01-27        70         0      0
7       Anhui 31.82570 117.2264 20-01-28       106         0      0
8       Anhui 31.82570 117.2264 20-01-29       152         2      0
9       Anhui 31.82570 117.2264 20-01-30       200         2      0
10      Anhui 31.82570 117.2264 20-01-31       237         3      0

Примечание. В общей сложности имеется 10 Provices, каждый с соответствующими координатами.

До сих пор я смог создать следующее изображение: enter image description here

, используя следующий код:


dta2 %>% 
  leaflet() %>%
  addProviderTiles(providers$OpenStreetMap) %>%
  addMarkers(label = dta2$Confirmed  , lng = dta2$Long, lat = dta2$Lat ,clusterOptions = markerClusterOptions(), popup = ~paste("Provice:", dta2$Provice))

Однако мой Цель состоит в том, чтобы отобразить общее количество подтвержденных случаев этого вируса в каждом кластере, а не количество наблюдений для каждого кластера (для каждой провинции имеется 22 наблюдателя). Другими словами, я хотел бы отобразить сумму подтвержденного столбца для каждой из 10 провинций в их отдельных кластерах, а не по частоте. Кто-нибудь может пролить свет на это для меня?

1 Ответ

0 голосов
/ 04 марта 2020

Трудно убедиться, что мое предложение работает нормально, так как у меня нет доступа к вашим данным. Но я думаю, что следующее может работать. Обратите внимание, что я использую пакет data.table для суммирования данных, вам нужно будет установить его, если у вас его еще нет.

library(data.table)

# Summarize the data
setDT(dta2)
dta2 <- dta2[, .(
  Confirmed = sum(Confirmed),
  Recovered = sum(Recovered),
  Deaths = sum(Deaths)
), .(Provice, Lat, Long)]

# Create the leaflet map
leaflet(dta2) %>%
  addProviderTiles(providers$OpenStreetMap) %>%
  addLabelOnlyMarkers(
    lng = ~Long,
    lat = ~Lat,
    label = ~Confirmed,
    labelOptions = labelOptions(noHide = TRUE)
  )

Вы можете настроить отображение с помощью аргумента labelOptions из функции addLabelOnlyMarkers(), если хотите.

...