请参阅下文-我不了解此行为。我可以通过region
成功过滤,但不能通过subregion
进行过滤。在有和没有加强对象WorldData1
的情况下都会发生这种情况。它也这样保存到文件中。有任何想法吗?
library(tidyverse)
WorldData1 <- map_data('world') %>% filter(subregion != '')
# I am using no characters as filter, but this also happens when putting in a subregion, e.g. 'Alaska'
#>
#> Attaching package: 'maps'
#> The following object is masked from 'package:purrr':
#>
#> map
ggplot() +
geom_map(data = WorldData1, map = WorldData1,
aes(x = long, y = lat, map_id = region))
#> Warning: Ignoring unknown aesthetics: x, y
由reprex package(v0.2.1)于2019-05-12创建
devtools::session_info()
#> ─ Session info ──────────────────────────────────────────────────────────
#> setting value
#> version R version 3.5.3 (2019-03-11)
#> os macOS Mojave 10.14.3
#> system x86_64, darwin15.6.0
#> ui X11
#> tidyverse * 1.2.1 2017-11-14 [1] CRAN (R 3.5.0)
答案 0 :(得分:2)
我找到了解决方案-我觉得值得保留这个问题,因为它指出了filter
(see related thread here)的有趣行为
按子区域筛选将删除子区域中的所有NA,并删除创建国家/地区多边形所需的行。在filter命令中明确包含NA有助于:
library(tidyverse)
WorldData1 <- map_data('world') %>% filter(is.na(subregion)| subregion != 'Alaska')
ggplot() +
geom_map(data = WorldData1, map = WorldData1,
aes(x = long, y = lat, map_id = region))
#> Warning: Ignoring unknown aesthetics: x, y
由reprex package(v0.2.1)于2019-05-12创建