鐵人賽Day 8-自己產製資料-地址定位part1

web
  1. 1. Google Fusion Table:
  2. 2. 後記

取得GIS資料的方式有很多,包含:

  • 取得實體檔或API(opendata等資料交換平台)
  • 拿專業儀器測量或在地圖上數化而得:GPS、遙測、工程測量、etc.
  • 地址定位:僅有poi的地址,可從線上資源取得地址的坐標

今天要介紹的為地址定位,如果你也有一批資料有地址沒坐標,那就參考本篇吧^^。

本文是參加鐵人賽的文章,同步發表於 “2018鐵人賽-30天打造我的WebGIS系列”

臺北市各區農會地址一覽表 臺北市開放資料平臺下載的這份為例,就是具有地址,但沒有坐標 的資料。
https://ithelp.ithome.com.tw/upload/images/20171227/20107816DaK7lkTNPs.jpg

我們可以使用一些線上資源幫助我們把它加值為具空間資訊的GIS資料,包括:

  • Google Fusion Table
  • 內政部TGOS門牌對位系統
  • 其它 (例如CartoDB也有支援Here的Geocoding,但需酌收點數)

我們這兩天就來使用看看免費又好用的Google Fusion Table內政部TGOS門牌對位系統,自己動手產生GIS資料。


Google Fusion Table:

  1. Fusion Table是在Google雲端上的一個功能,在Google雲端新增處可選擇
    https://ithelp.ithome.com.tw/upload/images/20171227/20107816IqfkzFy4YM.png

  2. 如果找不到,請按 [連結更多應用程式] ,搜尋後找到
    https://ithelp.ithome.com.tw/upload/images/20171227/20107816NJQl8zf1YD.jpg

  3. fusion table有幾種匯入資料的方式,這邊直接把剛剛的csv匯入,可能要注意一下編碼,中文字常會出現Big5/UTF8的問題
    https://ithelp.ithome.com.tw/upload/images/20171227/20107816Fa1zxYIfh3.jpg

  1. 然後會是一些設定(沒啥問題就下一步然後完成)
    https://ithelp.ithome.com.tw/upload/images/20171227/20107816NtSRqap8Uk.jpg

  2. 接著,我們選擇[File]–>[Geocode]
    https://ithelp.ithome.com.tw/upload/images/20171227/20107816pYd8BJdePj.jpg

  3. Geocode需要設定地址的欄位名稱,設定好後,就直接給它Run下去,需要執行一段時間
    https://ithelp.ithome.com.tw/upload/images/20171227/201078160FcpfGkEPe.jpg

  4. 然後…就完成了,我們切換至map頁籤看結果,
    這邊其實可以作一些視覺化設定,包含marker符號及產生熱區圖(heat map)
    https://ithelp.ithome.com.tw/upload/images/20171227/201078165vK3FvChhI.jpg

  1. 接著我們可以把資料匯出成kml,再透過[Day 7] 常見的GIS資料格式-轉換篇的程式轉換成想要的格式
    1
    2
    3
    4
    5
    var fs = require('fs');
    var KmlStream = require("kml-stream");
    var data = fs.createReadStream('./out.kml').pipe(new KmlStream()).on('data', function (d) {
    console.log(d);
    });

在Google Earth可以看到匯出的成果:
https://ithelp.ithome.com.tw/upload/images/20171227/20107816JQLHpG6d2A.jpg


後記

fusion table是一個快速地址對位的工具,但由於Google門牌資料庫完整度及更新頻率並不是這麼高,正確性及完整性可以還有一些限制,但已經可以滿足大多數需求,有了這個功能,只要手邊有地址,就可以自己的GIS資料自己產啦

而fusion table其實是基於Google Geocode Api,所以每天只能request2500筆。

另外,這幾天在蒐集資料時,發現Kuro大大之前也非常完整的介紹Fusion Table,或許大家也可以參考唷!