1、geopandas安裝
geopandas安裝很容易出各種各樣的問題,所以最保險的方式就是把所有的依賴包的whl文件都下載下來。
whl下載網址:https://www.lfd.uci.edu/~gohlke/pythonlibs/
首先,確定geopandas有哪些依賴包:Shapely pyproj GDAL Fiona
其中,Fiona也是依賴於GDAL,最好先安裝好GDAL之后再安裝Fiona
以下是我下載的版本:
注意:CP指的是python的版本,我安裝的python版本是3.7.0,所以所有安裝包的版本需要選擇cp37
最后,在實際的安裝過程中,Fiona也是有很多依賴包,如果網絡不好,也可以直接下載whl文件進行安裝:
至此,geopandas就已經安裝成功了
2、武漢地圖繪制舉例
數據來源:http://datav.aliyun.com/tools/atlas/ (阿里雲的地圖選擇器,可以直接導出中國地圖的經緯度)
選擇武漢市,復制出相應的json代碼,保存在text文件中,修改文件名為 “武漢市.json”
直接調用geopandas和matplotlib做圖:
# 導入需要的包 import matplotlib as mpl import matplotlib.pyplot as plt import geopandas from adjustText import adjust_text mpl.rcParams["font.family"] = "SimHei" mpl.rcParams["axes.unicode_minus"]=False # 用來正常顯示負號 plt.rcParams['font.sans-serif']=['SimHei'] # 用來正常顯示中文標簽 # 讀取數據 wh = geopandas.read_file('武漢市.json') # 繪制武漢市地圖 fig, ax = plt.subplots(figsize = (3, 6), dpi = 200) wh_map = wh.geometry.plot(ax = ax, facecolor = '#CCEBEB', edgecolor = '#009999', lw = 0.1) ax.axis('off')
# 調整地圖中標簽的位置,使其不重疊 new_texts = [ax.text(loc.x, loc.y, label, size = 6, color = '030303')\ for loc, label in zip(wh.geometry.representative_point(), wh.name)] adjust_text(new_texts, \ only_move = {'text':'xy'},\ arrowprops = dict(arrowstyle = '-', color = 'grey') ) plt.show()