我有一个自定义的shapefile。当我一次性绘制它时,它可以正常工作。但是我想按照某些变量进行分组,以绘制特定形状的区域。例如:
+-------------+--------+-------+
| county | region | sales |
+-------------+--------+-------+
| washoe | 1 | 5 |
| carson city | 1 | 10 |
| clark | 2 | 15 |
| harmon | 2 | 20 |
+-------------+--------+-------+
如果我运行:
leaflet() %>% addTiles %>% addPolygons(data=df)
这将根据这四个位置绘制四个独立的多边形。
但假设我想基于区域创建多边形。因此,理论上,输出将只包含两个多边形。一个是蒙哥马利和史蒂文斯的组合形状,另一个是莫西斯和哈蒙县的组合形状,并且我还想总结销售总额。
x <- df %>% group_by(region) %>% summarise(totals=sum(ones))
我会收到以下错误信息:
Error in CPL_geos_union(st_geometry(x), by_feature) :
Evaluation error: TopologyException: Input geom 0 is invalid: Ring Self-intersection at or near point -119.97497995771261 39.521600907266631 at -119.97497995771261 39.521600907266631
关于几何变量的信息:
df$geometry
Geometry set for 2106 features
geometry type: GEOMETRY
dimension: XY
bbox: xmin: -115.8968 ymin: 35.00184 xmax: -114.0428 ymax: 36.85366
epsg (SRID): 4326
proj4string: +proj=longlat +datum=WGS84 +no_defs
我需要将它转换成其他格式吗?