利用 Google Fusion Table,不用寫 code 也可以產生主題地圖
感謝台北市政府以及相關人士的努力,在十月中旬的時候,台北市 open data 平台又開放了「台北市住宅竊盜點位資訊」這樣的資料,雖然很多人戲稱房價又要下跌了,但是老話一句,身為有良心的開發者,當然居住安全比房價什麼的還要重要得多。
那麼,拿到這份資料我們可以怎麼玩呢? 剛好這份資料的格式是 CSV (Comma-Separated Values,一種由逗點分隔的純文字資料格式),所以本篇就來介紹如何透過 Google Fusion Table 來讓我們不必寫任何的 code ,也可以建立主題地圖。
首先先到台北市住宅竊盜點位資訊,點一下「使用資料」將所需的檔案下載下來,會得到一份 csv 檔案。
接著打開 Google Fusion Table 的頁面,看到下面這個畫面:
接著選擇「CREATE A FUSION TABLE」,會看到這樣的畫面:
現在試著把剛剛的 csv 直接餵給他,看看會發生什麼事
如果不意外,你應該會得到像這樣的亂碼資料 XDDDDD
不過沒關係,山不轉路轉,檔案格式當然也可以轉。只是需要多走幾步路。 這次我們將原始的 csv 資料先丟到 Google Sheet 內,請他將我們的資料轉成正確的編碼。 在建立一個新的 Google Sheet 之後,我們選擇 File > Import 將剛剛的 csv 檔案匯入:
記得一樣要選擇 Comma,因為是透過逗點分隔的資料格式。
然後就會得到正確編碼後的資料囉。不過糖廍里一樣 GG...因為原始資料就 GG 了... orz
ok, 到了這裡我們已經有一份正確的資料,這時再回到 Funsion Table,我們選擇 「Google Spreadsheets」,然後將剛剛建立的 Google Sheet 匯入進來:
匯入成功後,Funsion Table 會出現這樣的畫面:
這個時候,因為我們要製作地圖,所以要告訴 Funsion Table 地點的欄位不是單純的字串,而是用來表示地理資訊的資料。點選 Edit > Change columns:
然後將發生地點的 Type 改成 Location,然後點上面藍色的 Save 儲存。
資料都準備好了,然後我們建立地圖:
不意外的話你應該會看到這樣的畫面,是因為我們傳入的是地址的文字資訊, Google 需要將它轉為經緯度後才能對應到地圖上:
然後等待一段時間後,Funsion Table 就會為我們產生地圖,像這樣:
除了地點標示外,他也提供了熱圖 (Heat Map) 的呈現,試著拉拉旁邊的捲軸調整參數吧:
當然你也可以做好的地圖 share 出來,像這樣:
透過 Fusion Table 我們可以不用寫任何的程式碼就生成一份資訊地圖,很簡單吧 :)