从R中的传单贴图中删除灰色/灰色阴影

从R中的传单贴图中删除灰色/灰色阴影,r,dictionary,leaflet,R,Dictionary,Leaflet,伙计们,我有个问题。我的地图有一个不寻常的灰色阴影。 我使用形状文件 countries <- readOGR(".","ne_50m_admin_0_countries") 有多个NAs,我试图忽略它们-对我来说不起作用。我想保持NAs与原始提供程序相同的颜色,不带此阴影 我将csv和geojson合并到一个空间数据帧中 同样的问题也适用于任何提供者 非常感谢你的帮助! 谢谢 在R社区的帮助下完美解决。在此处输入图像描述 治疗NAs是一个关键: “如果您查看data_pg_df$Reg

伙计们,我有个问题。我的地图有一个不寻常的灰色阴影。 我使用形状文件

countries <- readOGR(".","ne_50m_admin_0_countries")
有多个NAs,我试图忽略它们-对我来说不起作用。我想保持NAs与原始提供程序相同的颜色,不带此阴影

我将csv和geojson合并到一个空间数据帧中

同样的问题也适用于任何提供者

非常感谢你的帮助!
谢谢

在R社区的帮助下完美解决。在此处输入图像描述

治疗NAs是一个关键:

“如果您查看data_pg_df$Region,您会发现它有许多NAs:

> data_pg_df$Region
[1] NA              NA              NA              NA              NA             
[6] NA              NA              NA              "Latin America" NA             
[11] NA              NA              NA              NA              NA             
[16] NA              NA              NA              NA              NA             
[21] NA              NA              NA              NA              NA             
[26] NA              NA              NA              NA              NA             
[31] NA              NA              NA              NA              NA             
[36] NA              NA              NA              "North America" NA             
[41] NA              "Asia"          NA              NA              NA             
[46] NA              NA              NA              NA              NA             
[51] NA              NA              NA              NA              NA             
[56] NA              NA              "Europe"        NA              NA             
[61] NA              NA              NA              NA              NA          
...   
使用data_pg_df$Region==input$regionInput,可以将其与一个值进行比较,如 在R中,如果你把一个值和NA比较,你得到NA

> data_pg_df$Region == "Asia"
[1]    NA    NA    NA    NA    NA    NA    NA    NA FALSE    NA    NA    NA    NA    
NA    NA
[16]    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    
NA    NA
[31]    NA    NA    NA    NA    NA    NA    NA    NA FALSE    NA    NA  TRUE    NA    
NA    NA
[46]    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA FALSE    
NA    NA
[61]    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    
NA    NA
...
您不能使用NA索引到数据对象中

您需要以某种方式处理NAs。我不确定什么适合您的数据集,但看起来您可能只希望保留==解析为TRUE的行,并删除将导致NA和FALSE的行。为此,您可以使用is.NA()添加一个检查:

。。。 那么你就有了:

selectedRegion <- reactive({
data_pg_df[!is.na(data_pg_df$Region) & data_pg_df$Region == input$regionInput, ]
})"
selectedRegion
> data_pg_df$Region == "Asia"
[1]    NA    NA    NA    NA    NA    NA    NA    NA FALSE    NA    NA    NA    NA    
NA    NA
[16]    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    
NA    NA
[31]    NA    NA    NA    NA    NA    NA    NA    NA FALSE    NA    NA  TRUE    NA    
NA    NA
[46]    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA FALSE    
NA    NA
[61]    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    NA    
NA    NA
...
!is.na(data_pg_df$Region) & data_pg_df$Region == "Asia"
[1] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE 
FALSE FALSE
[16] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE 
FALSE FALSE
[31] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE  TRUE FALSE 
FALSE FALSE
[46] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE 
FALSE FALSE
[61] FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE FALSE 
FALSE FALSE
selectedRegion <- reactive({
data_pg_df[!is.na(data_pg_df$Region) & data_pg_df$Region == input$regionInput, ]
})"