python - 在 ArcGIS Pro 中查找点图层的中心
问题描述
我有一个具有纬度/经度坐标的点图层。如何找到给定点图层的中心。为了加深理解,我附上一张图。
怎么可能做到这一点?
我尝试使用“平均中心”、“FeatureToPoint”工具,但它们给出了错误的结果并且完全找不到中心,是否有其他工具或者你能以某种方式使用 python 找到它,我有一个属性表,其中只包含纬度/经度坐标 (-180:180) (-90:90)。也许您可以通过任何公式或库找到它?
我试着按照你说的做,但是中心也出现在错误的地方,也许我做错了多边形?我会在问题中添加一张照片。
是的,我创建了 CONVEX_HULL 多边形。我把点层放在谷歌驱动器中。问题中的链接。 https://drive.google.com/drive/folders/1tCOYZLsiBFGxCjs5DuQ7_mt42BRSJGuA?usp=sharing
解决方案
我会尝试使用几何类型的最小边界几何(数据管理) - CONVEX_HULL 从您的输入点创建多边形特征。
arcpy.management.MinimumBoundingGeometry(in_features, out_feature_class, {geometry_type}, {group_option}, {group_field}, {mbg_fields_option})
然后您可以使用特征到点(数据管理)并从凸多边形创建质心:
arcpy.management.FeatureToPoint(in_features, out_feature_class, {point_location})
编辑:
是的,看起来多边形没有正确创建。您是否使用凸包创建了多边形?因为当使用凸包时,应该创建一个多边形,如下图所示。你可以添加你的点层吗?我会试试问题出在哪里。
您需要更改数据的坐标系(使用项目(数据管理))。选择 UPS North 而不是您之前使用的 WGS 1984。更改坐标系后,凸包正常工作 - 如下图。
arcpy.management.Project(in_dataset, out_dataset, out_coor_system, {transform_method}, {in_coor_system}, {preserve_shape}, {max_deviation}, {vertical})
推荐阅读
- javascript - 批量上传到 Odoo (OpenERP)
- lucene - 检查索引(Lucene)中不区分大小写的搜索
- mysql - 用不同的值替换也用作外键的主键
- c++ - 互斥体有范围吗?
- node.js - 由于 Pug 模板中的 mixin 和 JS 代码,缓存是否有助于避免使用 Express 框架进行服务器端渲染期间的性能影响?
- apache-spark - 为什么我在哪个 jar 或 spark 版本中出现错误和 foreachBatch?
- node.js - 如何获取nodejs中worker_threads创建的worker的内存使用情况
- soap - wso2is 5.7版如何更新服务提供者——saml2sso配置详情
- python - 计算 Shapely 几何对象的成对距离
- grafana - 在 Flux 中加入表:空响应