R 将属性表重新附着到空间多边形以生成空间多边形数据帧

R 将属性表重新附着到空间多边形以生成空间多边形数据帧,r,polygon,geospatial,coercion,spatial-data-frame,R,Polygon,Geospatial,Coercion,Spatial Data Frame,我已经用Shiny和传单构建了一个web应用程序,但是渲染速度非常慢,因为添加到地图中的空间多边形数据帧(merge.proj)是20000个多边形。我可能会尝试允许用户一次只查看特定的社区作为修复,但首先我想我应该简化多边形,看看这会加快进程多少 我的理解是,简化多边形会减少顶点的#等,并生成一个空间多边形,从而丢失属性表。我希望随后重新附加属性表,并重新创建一个空间多边形数据框,该数据框的大小有望减小 然而,代码出错了,我在网上找到的所有帮助都显示了如何在从头开始创建空间多边形和数据帧时做到

我已经用Shiny和传单构建了一个web应用程序,但是渲染速度非常慢,因为添加到地图中的空间多边形数据帧(merge.proj)是20000个多边形。我可能会尝试允许用户一次只查看特定的社区作为修复,但首先我想我应该简化多边形,看看这会加快进程多少

我的理解是,简化多边形会减少顶点的#等,并生成一个空间多边形,从而丢失属性表。我希望随后重新附加属性表,并重新创建一个空间多边形数据框,该数据框的大小有望减小

然而,代码出错了,我在网上找到的所有帮助都显示了如何在从头开始创建空间多边形和数据帧时做到这一点,我很难将它们所做的应用于我的数据()。错误表明我的多边形ID和row.names不匹配,但它们最初都来自同一个空间多边形数据框,所以我很困惑。我不知道如何手动操作,使它们匹配

我正在粘贴下面的错误和代码,我目前有。如有任何建议,将不胜感激

# For faster plotting, simplify polygons
merge.simplify <- gSimplify(merge.proj,0.1,topologyPreserve = T)

# Create a dataframe
merge.df <- data.frame(merge.proj@data)

# Do coercion to SPDF
merge.spdf <- SpatialPolygonsDataFrame(merge.simplify, merge.df)
#为加快打印速度,请简化多边形

merge.simplify如果您非常小心地确保行顺序没有更改,只需将
match.id=FALSE
提供给
SpatialPolygonsDataFrame
。非常感谢!成功了。请您解释一下match.id=FALSE是怎么做的好吗?
中有什么不清楚的地方吗?SpatialPolygonsDataFrame
?我对这一点不太熟悉,而且这些帮助页面通常都过于密集,充斥着词汇或底层机制,我不明白这会导致难以解释。我只是想知道,如果有人解释一下,会不会更清楚。但是我确实看了帮助页面,我想我明白了它的要点。谢谢我们理解文档可能没有什么帮助,但我们最容易帮助您的是,首先解释文档中对您没有意义的内容,否则我们可能(自己太习惯于这些功能)重复文档如果您非常小心地确保行顺序没有改变,只需将
match.id=FALSE
提供给
SpatialPolygonsDataFrame
。非常感谢!成功了。请您解释一下match.id=FALSE是怎么做的好吗?
中有什么不清楚的地方吗?SpatialPolygonsDataFrame
?我对这一点不太熟悉,而且这些帮助页面通常都过于密集,充斥着词汇或底层机制,我不明白这会导致难以解释。我只是想知道,如果有人解释一下,会不会更清楚。但是我确实看了帮助页面,我想我明白了它的要点。谢谢我们理解文档可能没有帮助,但如果首先解释文档中对您没有意义的内容,我们最容易帮助您,否则我们很可能(自己太习惯于这些功能)重复文档