先看結果:
看完這個圖之后,可能所有學GIS同學都:
這個不就是GIS里面的專題圖么,是個GIS軟件都能做,腦子里面可能都腦補出來在ArcGIS里面隨手點點鼠標就做出來了:
但是,如果這個圖是用Python/ target=_blank class=infotextkey>Python繪制出來的呢?
是不是覺得:
今天我們就來聊聊,在Python里面制作這種多維度的地圖專題圖的方法。
所謂專題圖的意思,指的是:
專題地圖(thematic map),又稱專用地圖、特種地圖,是在地理地圖上按照地圖主題的要求,突出并完善地表示與主題相關的一種或幾種要素,使地圖內容專題化、表達形式各異、用途專門化的地圖。
例如下面的我國供水資源專題圖:
單純的質底專題圖,就不用說了,今天來說說,如果在地圖上再疊加一層其他的圖形表達方式:
在matplotlib里面,不支持對直接對餅圖的自由分布疊加,那么如何在同一副地圖上繪制多個不同的餅圖呢?
答案就是:散點圖
用散點圖的坐標來控制位置,而用散點圖的marker來自定義生成餅就可以了,關鍵技術是自定義餅圖的幾個扇區,如下所示:
如果是三個扇區,分別占比是0.2,0.4,0.4的話,就會繪制出來下面這樣一個圓:
把我們自己構造的圓,給到散點圖的marker上面去,就會變成餅圖了:
掌握了畫餅狀散點,就可以繪制餅狀地圖專題圖了,如下所示:
我們用的數據是北京市統計年鑒里面的常住人口與戶籍人口數據:
地圖的質地顏色,用的是常住人口密度:
下面是繪制過程:
007地圖專題圖
打完收工