带有R的单张地图显示国家完全为灰色

带有R的单张地图显示国家完全为灰色,r,dictionary,leaflet,R,Dictionary,Leaflet,我开始熟悉R中的传单,尽管我遇到了一些问题。使用ggplot2绘制地图时,数据工作正常。然而,我被要求切换到一个更具动态性和交互性的地图,以获得一个闪亮的仪表板。在这里,我报告了我用我获得的“灰色”结果的图像执行的代码。我正在绘制一些意大利省级数据。我从意大利统计研究所的数据库(2020年,VersionOne generalizzata)中检索到该形状文件。尽管如此,我还是上传了dataframe和shape文件 库(dplyr) 图书馆(单张) 图书馆(rgdal) 图书馆(sf) #导入数

我开始熟悉R中的
传单
,尽管我遇到了一些问题。使用
ggplot2
绘制地图时,数据工作正常。然而,我被要求切换到一个更具动态性和交互性的地图,以获得一个闪亮的
仪表板。在这里,我报告了我用我获得的“灰色”结果的图像执行的代码。我正在绘制一些意大利省级数据。我从意大利统计研究所的数据库(2020年,VersionOne generalizzata)中检索到该形状文件。尽管如此,我还是上传了dataframe和shape文件

库(dplyr)
图书馆(单张)
图书馆(rgdal)
图书馆(sf)
#导入数据
加载('C://[…]/data_19.rda')#%
addProviderTiles(“Esri.WorldGrayCanvas”)%%>%
setView(纬度=41.8719,液化天然气=12.5674,缩放=5)%>%
添加多边形(
fillColor=ita_地图_数据$unilav_ula,
笔划=假,
平滑因子=0.2,
fillOpacity=0.3
)
这里是我从观众那里得到的结果:


我想在处理多边形数据帧的方式中存在一些问题。我希望有人能给我一些提示。提前感谢。

有关绘制Choropleth地图的信息,请参见R传单文档页面:

您需要指定要用于地图的调色板。 下面的代码生成下面的输出

library(dplyr)
library(leaflet)
library(rgdal)
library(sf)

# Import data 
load('C:/[...]/data_19.rda') # <--- There are several variables, I selected just one of them

# Import Italy shapefile
ita_map = readOGR('C:/[...]/Limiti01012020_g/ProvCM01012020_g', 
                  'ProvCM01012020_g_WGS84', stringsAsFactors = FALSE)

# Merge
colnames(data_19)[1] = "COD_PROV" # <--- This is the numerical provincial code
ita_map_sf = st_as_sf(ita_map)
ita_map_sf$COD_PROV <- as.numeric(ita_map_sf$COD_PROV)
ita_map_data <- left_join(ita_map_sf, data_19, by = "COD_PROV")

# Specify Color Palette
pal <- colorQuantile("Blues", domain = ita_map_data$unilav_ula, n=5)

# Generate map with leaflet
ita_map_data %>%
  st_transform(crs = 4326) %>%
  leaflet() %>%
  addProviderTiles("Esri.WorldGrayCanvas") %>%
  setView(lat = 41.8719, lng = 12.5674, zoom = 5) %>%
  addPolygons(
    fillColor = ~pal(unilav_ula),
    stroke = FALSE,
    smoothFactor = 0.2,
    fillOpacity = 0.7,
    label=~unilav_ula
  )
库(dplyr)
图书馆(单张)
图书馆(rgdal)
图书馆(sf)
#导入数据
加载('C://[…]/data_19.rda')#%
添加多边形(
fillColor=~pal(unilav_ula),
笔划=假,
平滑因子=0.2,
fillOpacity=0.7,
标签=~unilav_ula
)

library(dplyr)
library(leaflet)
library(rgdal)
library(sf)

# Import data 
load('C:/[...]/data_19.rda') # <--- There are several variables, I selected just one of them

# Import Italy shapefile
ita_map = readOGR('C:/[...]/Limiti01012020_g/ProvCM01012020_g', 
                  'ProvCM01012020_g_WGS84', stringsAsFactors = FALSE)

# Merge
colnames(data_19)[1] = "COD_PROV" # <--- This is the numerical provincial code
ita_map_sf = st_as_sf(ita_map)
ita_map_sf$COD_PROV <- as.numeric(ita_map_sf$COD_PROV)
ita_map_data <- left_join(ita_map_sf, data_19, by = "COD_PROV")

# Specify Color Palette
pal <- colorQuantile("Blues", domain = ita_map_data$unilav_ula, n=5)

# Generate map with leaflet
ita_map_data %>%
  st_transform(crs = 4326) %>%
  leaflet() %>%
  addProviderTiles("Esri.WorldGrayCanvas") %>%
  setView(lat = 41.8719, lng = 12.5674, zoom = 5) %>%
  addPolygons(
    fillColor = ~pal(unilav_ula),
    stroke = FALSE,
    smoothFactor = 0.2,
    fillOpacity = 0.7,
    label=~unilav_ula
  )