微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

使用纬度/经度坐标将凸包面积增加 x 百分比

如何解决使用纬度/经度坐标将凸包面积增加 x 百分比

我用 scipy.spatial.ConvexHull 计算了一些随机坐标的凸包。

enter image description here

现在我想按给定的百分比增加面积。我已经在 scipy 上找到了一种方法,但找不到任何方法

解决方法

我建议使用 GeoPandas。 GeoPandas 将为您提供更多的地理空间数据方法/功能,而不是辛辣的。

您可以使用 GeoPandas 轻松计算船体,并执行一些 affine transformations 之类的 scale

下面是一个带有随机坐标的简短示例。

import plotly.express as px
import numpy as np
import geopandas as gp

from shapely.geometry import MultiPoint


def get_coordinates(): 
    return [ np.random.uniform(160.3,171.2),np.random.uniform(27.1,36.3) ]

points = [ get_coordinates() for _ in range(50) ]

gdf = gp.GeoDataFrame(index=[0],crs= {'init':'epsg:4326'},geometry=[MultiPoint(points)])
gdf_hull = gdf.convex_hull
gdf_hull_scaled = gdf_hull.scale(2,2,origin='center')

例如,您可以使用 plotly 绘制数据。图像显示了比例因子为 2 的结果。

enter image description here

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。