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

📅  最后修改于: 2022-05-13 01:55:51.627000             🧑  作者: Mango

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

在本文中,我们将了解如何使用 R 编程语言为绘制在世界地图上的点添加标签。

方法一:使用地图包

Maps: R 中的“maps”包用于绘制和显示地理地图。它包含用于表示国家、大陆和海洋的各种数据库。可以使用以下命令安装包并将其加载到工作空间中:

install.packages("maps")

该软件包包含“世界”数据库,其中包含大陆的描述性图像,不再包含湖泊和湖泊岛屿。该包的地图函数用于绘制由地图数据库指定的线和多边形,其中包含地理地图。

可以以纬度和经度以及城市名称的形式指定数据。然后可以使用 text() 方法在该图上注释文本。它可以使用各种属性进行自定义,以提高可读性并增强图形。



R
# Load required libraries
library(maps)
  
# capturing data of cities
data_frame <- data.frame(name = c("Greece" , "France" , "Nigeria"),
                         latitude = c(38.0,46.0,7.0),
                         longitude = c(23.7,2.0,6.0))
map(database = "world")
  
# marking points on map
text(x = data_frame$longitude, y = data_frame$latitude, 
     data_frame$name, pos = 1, col = "magenta")


R
# load library
library(rworldmap)
  
# get world map
worldmap <- getMap(resolution = "coarse")
  
# plot world map
plot(worldmap, col = "lightgrey", 
     fill = T, border = "darkgray",
     xlim = c(-180, 180), ylim = c(-90, 90),
     bg = "aliceblue"
     )
  
# defining data frame
data_frame <- data.frame(name = c("Greece" , "France" , "Nigeria"),
                         latitude = c(38.0,46.0,7.0),
                         longitude = c(23.7,2.0,6.0))
  
# marking the points in the map 
points(x = data_frame$longitude, y = data_frame$latitude)
  
# adding text to map 
text(x = data_frame$longitude, y = data_frame$latitude, 
     data_frame$name, pos = 4, col = "blue")


输出

方法二:使用rworldmap包

“rworldmap”可用于映射全球数据,还可以映射国家级和网格化用户数据集。可以通过以下命令下载并安装到工作空间:

install.packages("rworldmap")

getMap() 方法可用于访问存储在包中的地图。

plot() 方法用于在打开的图形设备上绘制世界地图。可以自定义为绘图添加颜色并指定绘图设备的尺寸。

点()可以通过经度,纬度坐标的规范添加。 text() 方法可用于使用 text() 方法注释这些点。

电阻

# load library
library(rworldmap)
  
# get world map
worldmap <- getMap(resolution = "coarse")
  
# plot world map
plot(worldmap, col = "lightgrey", 
     fill = T, border = "darkgray",
     xlim = c(-180, 180), ylim = c(-90, 90),
     bg = "aliceblue"
     )
  
# defining data frame
data_frame <- data.frame(name = c("Greece" , "France" , "Nigeria"),
                         latitude = c(38.0,46.0,7.0),
                         longitude = c(23.7,2.0,6.0))
  
# marking the points in the map 
points(x = data_frame$longitude, y = data_frame$latitude)
  
# adding text to map 
text(x = data_frame$longitude, y = data_frame$latitude, 
     data_frame$name, pos = 4, col = "blue")

输出