我正在嘗試使用 Geopandas 和 Matplotlib 在地圖上顯示商店的空間分布。問題: 當(dāng)我繪制圖釘時(shí),底圖會變形。這是繪制引腳之前和之后的示例問題: 這種失真的來源是什么?我該如何預(yù)防?import pandas as pdimport geopandas as gpdimport matplotlib.pyplot as pltfrom shapely.geometry import Polygon# Creating the simplified polygonlatitude = [60.41125, 59.99236, 59.99236]longitude = [24.66917, 24.66917, 25.36972]geometry = Polygon(zip(longitude, latitude))polygon = gpd.GeoDataFrame(index=[0], crs = 'epsg:4326', geometry=[geometry]) # ploting the basemapax = polygon.plot(color="#3791CB")# Dict of sample coordinatescoordinates = {"latitude": ["60.193141", "60.292777", "60.175053", "60.163187", "60.245272", "60.154392", "60.182906"],"longitude": ["24.934214", "24.969730", "24.831068", "24.739044", "24.860983", "24.884773", "24.959175"]}# Creating a dataframe from coordinatesdf = pd.DataFrame(coordinates)# Creating the GeoDataFrameshops = gpd.GeoDataFrame(coordinates, geometry=gpd.points_from_xy(df.longitude, df.latitude))# Plotting office coordinatesshops.plot(ax=ax, color="red", markersize = 20, zorder=2)# adding gridplt.grid(linestyle=":", color='grey')plt.show()謝謝你!
1 回答

哆啦的時(shí)光機(jī)
TA貢獻(xiàn)1779條經(jīng)驗(yàn) 獲得超6個(gè)贊
你的地圖和別針有不同的參考系統(tǒng)..
當(dāng)您創(chuàng)建第一個(gè) GeoDataFrame 時(shí),您指定其坐標(biāo)參考系統(tǒng) (crs = 'epsg:4326')。當(dāng)您為商店坐標(biāo)創(chuàng)建地理數(shù)據(jù)框時(shí),您不需要。這就是失真的來源……
這應(yīng)該修復(fù)它:
shops = gpd.GeoDataFrame(
coordinates,
geometry = gpd.points_from_xy(
df.longitude,
df.latitude),
crs = "EPSG:4326"
)
)
添加回答
舉報(bào)
0/150
提交
取消