关于这个主题的现有问题已经很少,但不幸的是我没有找到可以解决我的问题的东西......

我有一个点 Lat, Long 坐标,即 Lat= 10 和 Long = 10。我想围绕该点创建一个 0.5 度边界框的形状文件,因此边界框应如下所示:

  • 最小值 Long= 9.75
  • 最小纬度 = 9.75
  • 最大值 Long = 10.25
  • 最大纬度 = 10.25

  • 有谁知道如何在pyhton中做到这一点?

    最佳答案

    这是使用 shapely、geopandas 和 pandas 的一种方法:

    import geopandas as gpd
    import pandas as pd
    from shapely.geometry import Polygon
    
    
    def bbox(lat,lng, margin):
        return Polygon([[lng-margin, lat-margin],[lng-margin, lat+margin],
        [lng+margin,lat+margin],[lng+margin,lat-margin]])
    
    gpd.GeoDataFrame(pd.DataFrame(['p1'], columns = ['geom']),
         crs = {'init':'epsg:4326'},
         geometry = [bbox(10,10, 0.25)]).to_file('poly.shp')
    

    关于Python - 从边界框坐标列表创建形状文件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/54461794/

    10-13 08:31