为 R 中绘制在世界地图上的点添加标签

Adding labels to points plotted on world map in R

我已经使用 R 在世界地图上绘制了一系列 latitude/longitude 坐标。我想为我绘制的这些点添加标签。 目前我的代码是:

library(maps)
cities<-read.csv("cities.csv", header=T)
cities
                  id  lat   lon
1            Nigeria  7.0   6.0
2             Gambia 13.3  16.0
3           Cambodia 12.0 105.0 
4             France 46.0   2.0  
5             Greece 38.0  23.7

map(database="world")
points(x = cities$lon, y = cities$lat, col = "red", pch=20)

我想添加标签 (cities$id) 或按顺序为每个点编号,以便我知道哪个点对应于我的哪个数据条目。

我看过 ggplot2 的代码,但我无法安装 ggmap (可能我的版本 1.0.44 太旧了)所以我正在尝试远离这种方法。

如有任何建议,我们将不胜感激。非常感谢!

World map with unlabeled points

使用基础 R text 函数,在 points 调用后添加:

text(cities$lon, y = cities$lat, cities$id, pos = 4)

您可以更改 pos 以适应:1 在点下方显示文本,2 在左侧,3 在上方,4 在右侧。