Все,
Следующий географический файл JSON содержит список кратких названий и координат стран. Я не уверен, какова цель этих координат. Эти координаты не являются координатами этих стран. Вы хоть представляете, что означают эти координаты?
Следующий скрипт Python использует этот файл для создания файлов форм и рисунков https://github.com/jjk-code-otter/clima ... in/scripts /data_management/make_new_regions.py
Я процитировал часть кода, использующего эти координаты.
# Make the coordinates into a GeoDataFrame
clean_geoms = pd.DataFrame([["Polygon", coordinates]], columns=["field_geom_type", "field_coords"])
data = Polygon(eval(clean_geoms.field_coords.iloc[0])[0])
masks = gp.GeoDataFrame({'name': [area_name], 'geometry': [data]})
# Select the region of interest, copy it and mask off using coordinates
print(area_name)
region_shapes = region_shapes.loc[[area_name]]
region_clipped = copy.deepcopy(region_shapes)
region_clipped.geometry[area_name] = region_shapes.geometry[area_name].intersection(masks.geometry[0])
region_clipped['region'] = area_name
Эти координаты явно используются в следующей строке, где реализуется пересечение между этими координатами и областью. Я также обнаружил, что код работает, если я прокомментировал функцию .intersection(masks.geometry[0]).
Все, Следующий географический файл JSON содержит список кратких названий и координат стран. Я не уверен, какова цель этих координат. Эти координаты не являются координатами этих стран. Вы хоть представляете, что означают эти координаты? [code] [ { "name": "League of Arab States", "countries": ["MR", "EH", "MA", "DZ", "TN", "LY", "EG", "SO", "SD", "DJ", "KM", "BH", "IQ", "JO", "KW", "LB", "OM", "PS", "QA", "SA", "SY", "AE", "YE", "SOL" ], "coordinates": "[[[-20, 40], [65, 50], [65, -20], [-20, -20], [-20, 40]]]" }, { "name": "North African Arab Countries", "countries": ["MR", "EH", "MA", "DZ", "TN", "LY", "EG"], "coordinates": "[[[-20, 40], [65, 50], [65, -20], [-20, -20], [-20, 40]]]" }, { "name": "East African Arab Countries", "countries": ["SO", "SD", "DJ", "KM", "SOL"], "coordinates": "[[[-20, 40], [65, 50], [65, -20], [-20, -20], [-20, 40]]]" }, { "name": "Middle East Arab Countries", "countries": ["BH", "IQ", "JO", "KW", "LB", "OM", "PS", "QA", "SA", "SY", "AE", "YE"], "coordinates": "[[[-20, 40], [65, 50], [65, -20], [-20, -20], [-20, 40]]]" } ] [/code] Следующий скрипт Python использует этот файл для создания файлов форм и рисунков https://github.com/jjk-code-otter/climate-indicator-manager/blob/main/scripts /data_management/make_new_regions.py Я процитировал часть кода, использующего эти координаты. [code] # Make the coordinates into a GeoDataFrame clean_geoms = pd.DataFrame([["Polygon", coordinates]], columns=["field_geom_type", "field_coords"]) data = Polygon(eval(clean_geoms.field_coords.iloc[0])[0]) masks = gp.GeoDataFrame({'name': [area_name], 'geometry': [data]})
# Select the region of interest, copy it and mask off using coordinates print(area_name) region_shapes = region_shapes.loc[[area_name]] region_clipped = copy.deepcopy(region_shapes) region_clipped.geometry[area_name] = region_shapes.geometry[area_name].intersection(masks.geometry[0]) region_clipped['region'] = area_name [/code] Эти координаты явно используются в следующей строке, где реализуется пересечение между этими координатами и областью. Я также обнаружил, что код работает, если я прокомментировал функцию .intersection(masks.geometry[0]). [code] region_clipped.geometry[area_name] = region_shapes.geometry[area_name].intersection(masks.geometry[0]) [/code] Я создал рабочий пример, который можно загрузить по следующей ссылке https://app.box.com/s/xtmh5elp520wng3y75z8fwv1mk4qv8tw. Спасибо