为绘制在 R 中的世界地图上的点添加标签
在本文中,我们将了解如何使用 R 编程语言为绘制在世界地图上的点添加标签。
方法一:使用地图包
Maps: R 中的“maps”包用于绘制和显示地理地图。它包含用于表示国家、大陆和海洋的各种数据库。可以使用以下命令安装包并将其加载到工作空间中:
install.packages("maps")
该软件包包含“世界”数据库,其中包含大陆的描述性图像,不再包含湖泊和湖泊岛屿。该包的地图函数用于绘制由地图数据库指定的线和多边形,其中包含地理地图。
map(database = “world”)
可以以纬度和经度以及城市名称的形式指定数据。然后可以使用 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() 方法可用于访问存储在包中的地图。
getMap(resolution = “coarse”)
plot() 方法用于在打开的图形设备上绘制世界地图。可以自定义为绘图添加颜色并指定绘图设备的尺寸。
plot (worldMap , col = , border = )
点()可以通过经度,纬度坐标的规范添加。 text() 方法可用于使用 text() 方法注释这些点。
Syntax: text ( x , y , names, col = )
Arguments :
- x, y: The x and y coordinates respectively.
- names: The names to be assigned equivalent to the x and y coordinates.
- col: The colour used to annotate the points.
电阻
# 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")
输出