我正在尝试使用GEOPANDAS PYTHON为一组级联的地理数据框(而不是单一颜色)的地图对象设置不同的颜色。

我尝试了设置facecolor和cmap的常规方法,但不适用于级联的地理数据框。

我想为gdf和边界(例如红色和蓝色)获得不同的颜色形状,而不是我目前正在获得的单一颜色。

这是代码:

import pandas as pd
import geopandas as gpd
from geopandas import GeoDataFrame
import matplotlib.pyplot as plt
import pandas
from shapely import wkt

#Converting an excel file into a geodataframe

Shape=pd.read_excel('C:/Users/user/OneDrive/documents/Excel .xlsx')
print(Shape)
Shape['geometry'] = Shape['geometry'].apply(wkt.loads)
gdf = gpd.GeoDataFrame(Shape, geometry='geometry')
gdf.plot()

#reading another geodataframe
Boundaries=gpd.read_file('C:/Users/user/Desktop/Boundaries/eez_v10.shp')

#concatenating  Boundaries and gdfgeodataframes
map=pd.concat([gdf,Boundaries], sort=False)
ax=map.plot(figsize=(20,20))
plt.xlim([47,60])
plt.ylim([22,32])
plt.show()

最佳答案

您不需要做concat,只需将两个df绘制到同一轴上即可。

gdf = gpd.GeoDataFrame(Shape, geometry='geometry')
Boundaries=gpd.read_file('C:/Users/user/Desktop/Boundaries/eez_v10.shp')

ax = gdf.plot(color='blue')
Boundaries.plot(ax=ax, color='red')

10-07 15:48