r - 如何在 map 上的特定国家着色

标签 r colors maps country

我需要在仅中美洲的裁剪世界地图中为哥斯达黎加上色。

我已经编写的代码包含在下面......我希望能够使用 ggplot2 和 sf 库来完成它。

library("ggplot2")
theme_set(theme_bw())
library("sf")
library("rnaturalearth")
library("rnaturalearthdata")
library("maps")
world <- ne_countries(scale='medium',returnclass = 'sf')
class(world)


(CentralAmerica <- ggplot(data = world) +
  geom_sf()  +
  coord_sf(xlim = c(-60, -120), ylim = c(5, 35), expand = FALSE) +
  scale_fill_viridis_d(option = "plasma") +
  theme(panel.background = element_rect(fill = "azure"),
     panel.border = element_rect(fill = NA)))

最佳答案

一种更有效的方法是在以下内容中包含 if()ifelse() 语句:

geom_sf(fill = ifelse(world$geounit == "Costa Rica", 'red', 'blue'))

关于r - 如何在 map 上的特定国家着色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56672192/

相关文章:

R: promise 已在评估中

c# - bitmap.save 未在 C# 中保存精确的像素颜色

javascript - 如何将 json 数据添加到由 long 和 lat 组成的数组中?

php - 谷歌地图标记未显示在资源管理器或 Chrome 中

javascript - 谷歌地图方向服务标记动画

r - 如何在同一图表中用条形图表示两个时间序列之间的差异?

在 R 中重新采样(折叠)以进行交叉验证

r - R 中的上标

macos - 在 zsh PS1(提示)env var 中使用自定义颜色会导致空格问题

android - 在 Android Activity 中将颜色设置为文本?