第一部分
很久以前,我住在村子里,因為村子小,所以對村子的一草一木都很熟悉,在熟悉的環境里就很有安全感。
后來我到了大城市,卻發現城市太大了,一輩子都熟悉不完。
這個城市的絕大部分地方我都沒有去過,就算去了我也不知道這些高樓和院牆里到底是干嘛的,這讓我很沒安全感。
后來,總而言之,我做了一個簡單的程序,輸入一個地圖邊界,就能把一些也許重要的區域在地圖上標注出來,像下面這樣(圖片點擊放大):
上面這個圖標注的是南京市的秦淮區,其中紅字部分是我手動加上去的,其它部分是程序生成的。
雖然比較簡陋,但上圖還是提供了一些值得關注的信息:
- 南京新街口有很多品牌服裝店
- 夫子廟和秦淮河是兩個主要的旅游景點
- 上述兩個區域附近有較多的餐飲飯館
- 南京航空航天大學在此區域
然后我又輸入了北京市-海淀區的邊界,這個區的面積更大,然后得到了如下標注圖(圖片點擊放大)
稍微觀察后發現,海淀區標注為高等院校的淺黃色區域比較多,然后我放大了高校較密集的區域,用了一些時間把高校的名字用紅色字體手動加上(圖片點擊放大):
以上,就是這個程序的全部功能:輸入一個地理邊界,得到一個標注圖。
第二部分
然后就是這個簡單的效果是怎么實現的~
- 想辦法得到全國的POI數據
- 輸入一個地理邊界,用Python庫h3將該邊界內的區域填充為無數個緊鄰的六邊形
- 計算每個六邊形內各種POI的種類對應的數量
- 把每個六邊形看成一篇內容是POI類型的文章,用tf-idf方法獲得每個六邊形的主題
- 只顯示主題相同且相鄰個數 >= 3的六邊形
- 將所有六邊形和主題用folium庫在地圖上繪制出來
第三部分
- 如果有小伙伴對其它城市區域感興趣,請在本周(03月21日前)留言 "省-城市-行政區" 的形式,我會盡量生成對應的html文件並統一放在 百度網盤: 提取碼: sbq4
- 顯示html文件的內容需要ke學上網(因為用的奇怪的繪圖庫folium。。。)
- 因為生成標注圖耗時較長,比如生成海淀區的標注圖大概要10分鍾,所以留言時請盡量精確到區,如果時間足夠留言多個區我也會盡量處理
- POI數據比較難獲得,所以不打算公開,請見諒
- 標注六邊形類型的藍字可以點擊,點擊會出來對應的高德坐標,可在 高德地圖坐標拾取 中輸入坐標進一步查詢
- 部分行政區無法生成標注圖,因為其對應的行政區邊界很不規則
---------------
太尷尬了,沒有回復 = =