Python 从坐标计算矩形面积

Python 从坐标计算矩形面积,python,geometry,Python,Geometry,如果我有两点(51.9925734,5.65038093),(51.99226769,5.64991222) 我想得到矩形的地球面积 我从其他资源中尝试了此方法: from area import area obj_field = {'type':'Polygon','coordinates':[[[51.9925734,5.65038093], [51.9925734,5.64991222],

如果我有两点(51.9925734,5.65038093),(51.99226769,5.64991222)

我想得到矩形的地球面积

我从其他资源中尝试了此方法:

from area import area
obj_field = {'type':'Polygon','coordinates':[[[51.9925734,5.65038093],
                                     [51.9925734,5.64991222],
                                     [51.99226769,5.64991222],
                                     [51.99226769,5.65038093]]]}
field_area_2 = area(obj_field)
print(f'The total field area is: {field_area_2} square meters')
The total field area is: 1767.018812772391 square meters

但我不确定它是否正确。

对于小区域,如您的示例,最简单的方法是将lat/lon坐标转换为UTM。然后可以使用基本数学,如计算矩形的面积,如以下代码段所示:

import utm

a_geo = 51.9925734, 5.65038093
b_geo = 51.99226769, 5.64991222

# Convert lat, lon to utm
a_easting, a_northing, zone, _ = utm.from_latlon(*a_geo)
b_easting, b_northing, _, _ = utm.from_latlon(*b_geo, force_zone_number=zone)

area = abs((a_easting - b_easting) * (a_northing - b_northing))

使用一个地理软件包来计算投影中的面积——注意,这两个角并不表示地球表面的矩形区域。使用问题标题的关键字搜索应该可以找到合适的包。在StackOverflow上,请求软件/库的建议显然与主题无关。您知道如何在没有Python的情况下计算面积吗?谢谢您的建议。我将阅读文档。