在 R 中编辑 tmap 数据文件
Posted
技术标签:
【中文标题】在 R 中编辑 tmap 数据文件【英文标题】:Editing a tmap data file in R 【发布时间】:2021-12-03 05:07:57 【问题描述】:我是使用 tmap 的新手。我正在使用默认的“世界”地图,我可以创建世界地图并根据预期寿命为所有国家/地区着色,只需使用:
library(tmap)
library(sf)
tm_shape(World) +
tm_polygons("life_exp")
但现在,我创建了自己的数据框以与 World 数据框合并。
World2 <- merge(World, df, by="iso_a3")
这行得通,我现在有一个很好的合并数据框,其中包含我的变量。但是当我运行它时,我得到了这个:
Error: Object World2 is neither from class sf, stars, Spatial, Raster, nor SpatRaster.
我需要对合并的数据框做些什么才能让它在这里工作吗?
【问题讨论】:
在此处尝试步骤 8.1:rpubs.com/quarcs-lab/tutorial-maps-in-r(但也请查看步骤 8 中的合并)。 @user2619203,我在第 8 步中看到他们提到使用 st_as_sf() 将其转换为 sf,而不是下面 lovalery 提到的 st_sf()。我刚刚尝试过,两者都工作 - 谢谢! 【参考方案1】:您需要将您的dataframe
转换为sf
类型的对象。我想以下行应该可以解决您的问题:
World2 <- st_sf(World2)
【讨论】:
这就像一个魅力,谢谢!我用 World2 很高兴能为您提供帮助。请将答案标记为已接受,以便其他用户更容易找到正确答案。干杯以上是关于在 R 中编辑 tmap 数据文件的主要内容,如果未能解决你的问题,请参考以下文章
尝试在 R 中使用 tmap 绘制 SpatialLinesDataFrame 时出错
使用 tmap 绘图时最好使用最终的 SpatialPolygonsDataFrame 还是应该在 tmap 选项中进行更改?