使用传单生成总计数图

Using leaflet to produce plot with total count

我正在尝试使用 R 中的 leaflet 包来生成交互式视觉效果,这有助于我可视化以下数据:

      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个省份,每个省份都有各自的坐标。

到目前为止,我已经能够创建以下图像:

使用以下代码:


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

但是,我的目标是显示每个集群中该病毒的确诊病例总数,而不是每个集群的观察数(每个省有 22 个 obs)。换句话说,我想显示各个集群中 10 个省份中每个省份的已确认列的总和,而不是频率。有人可以为我解释一下吗?

由于我无权访问您的数据,因此很难确定我的提议是否有效。但我认为以下可能有效。请注意,我正在使用 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)
  )

如果需要,您可以使用 addLabelOnlyMarkers() 函数的参数 labelOptions 自定义显示。