iT邦幫忙

2018 iT 邦幫忙鐵人賽
DAY 4
1
Modern Web

30天打造我的WebGIS系列 第 4

[Day 4] 資料視覺化工具-CARTO part1

  • 分享至 

  • xImage
  •  

除了使用前端框架搭建地圖應用外,有時我們拿到資料後需要快速地產生主題圖分享給朋友、或是嵌入既有的圖台時怎麼辦呢?滿足這類需求的視覺化工具服務應運而生。以下我們以CARTO平台作為本次的示範。

CARTO簡介

CARTO是一間來自西班牙的公司,主要提供Software as a Service (SaaS)的雲端計算平台,其包含資料儲存服務、線上製圖工具及分析,以便快速地發布GIS主題圖,在資料視覺化與資料處理上皆有其獨到之處。

開始使用

進入到CARTO首頁後,點選右上方,可以用Google或GitHub帳號登入。
https://ithelp.ithome.com.tw/upload/images/20171222/201078169hRcq47dmG.jpg

進入管理畫面,基本上分兩部分管理:MapDataset

  • Map所儲存的是任何我們已經製作過的主題圖,目前還是空的。
  • Dataset則是已上傳或連結的資料集,免費帳號即能使用250MB的儲存空間,任何地圖上的疊加資訊都是來自這裡,No datasets, no fun,點擊右上方NEW DATASET,我們開始匯入資料吧!
    https://ithelp.ithome.com.tw/upload/images/20171222/20107816dEzk8AB6tm.jpg
    https://ithelp.ithome.com.tw/upload/images/20171222/20107816YVx8maC3tm.jpg

資料匯入

資料可以來自本機,也可以來自雲端空間,步驟如下:

  1. 點選 datasets > Data file
  2. 點擊 NEW DATASET,找到Upload a file or a URL

而CARTO能接受的資料格式包含前一天所提到的:KML/KMZ、GeoJSON、ESRI Shapefile等,還有常見的CSV、xlsx囉

  • 特別要注意的是,其中ESRI Shapefile,由多個檔案組成,因此需將檔案壓縮為zip或gz格式再上傳,一個完整的shapefile至少須由四個檔案組成:
    1. .shp file:儲存幾何資料
    2. .dbf file:儲存屬性資料
    3. .shx file:儲存幾何圖元的索引
    4. .prj file:儲存坐標系統與投影,雖然沒有這個檔案,一般GIS軟體依然能夠開啟shapefile,但是要上傳至CARTO並正確展繪,這是必須的,在使用shapefile時,大家養成好習慣吧。
    https://ithelp.ithome.com.tw/upload/images/20171222/20107816MWCUW9Iuzg.jpg

本案例將使用open data,隨著近年政府開放資料的進展,我們可至各opendata網站搜尋想要的資料,以台中市政府的平台為例,搜尋景點資訊作為本次案例,可看到下載xls檔案中的欄位包含:

  • 一般欄位:景點ID、名稱、簡述、鄉鎮市區等
  • 空間欄位:東經、北緯,以及地址(空間欄位即為我們能在地圖上畫出點位的依據)
    https://ithelp.ithome.com.tw/upload/images/20171222/201078167dIWFkG1dF.jpg

由於該檔案為.xls格式,請另存為.xlsx或.csv,再上傳喔。
上傳完畢!按下CONNECT DTASET
https://ithelp.ithome.com.tw/upload/images/20171222/20107816xXlgJHTTHX.jpg

線上資料處理與SQL

原始資料通常含有許多不需要的欄位,或是需要整理的欄位。資料上傳後也可進行編修,例如:

  • 中文欄位支援度較差,建議修改為英文欄位。
  • 檢視資料表時,下方有個SQL選項,可在此篩選想要的資訊利用SQL語法進行編輯。
    https://ithelp.ithome.com.tw/upload/images/20171222/201078168rnC36IIuA.jpg
    https://ithelp.ithome.com.tw/upload/images/20171222/20107816hx9nK22VBe.jpg
    至此,資料已經準備就緒!

地圖發布

接下來點擊右下角CREATE MAP產生主題圖。進入地圖編輯頁面時,也分成LAYERSWIDGETS兩個區塊:

LAYERS

Layer(圖層)在GIS中是不可或缺的概念,每個圖層都有自己所要描述地理現象或實體。畫面中寫著LAYERS(1/8)代表在免費方案中,我們最多能在同一張主題圖內套用8個圖層,目前的景點資訊即為一個圖層。
若要切換底圖,可點選下方
BASEMAP
按鈕選擇喜歡的底圖,除了CARTO本身的底圖外,亦包含了來自不同公司的地圖:

  • Stamen
  • HERE
  • 也可以介接我們前兩天所提到的WMSWMTS

眼尖的你可能會發現,怎麼我們的地圖上都沒有看到我們的旅遊景點呢。請看到畫面中淡黃色區塊提醒您:需要對您的資料進行geocoding(地理對位/地理編碼),地理編碼是指將含有空間資訊意涵的資料轉換成地理坐標的過程,例如地址就是一種常見的位置描述方式,可參考Google Maps API的敘述。針對地址對位,後續的文章將會進行更詳細的說明。
https://ithelp.ithome.com.tw/upload/images/20171222/20107816QY2Zc7MmBG.jpg

話不多說,既然我們的資料中已經有了坐標資訊(經緯度)了,就直接點擊GEOCODE按鈕吧!步驟如下:

  • Georeference中,INPUT是我們的景點圖層,而TYPE選擇Latitude and Longitude(經緯度)。
  • Parameter中,選擇經度與緯度所分別對應的資料欄位。
  • 按下APPLY
    https://ithelp.ithome.com.tw/upload/images/20171222/20107816zuwJghDVJM.jpg

最基本的主題圖就出現啦!
https://ithelp.ithome.com.tw/upload/images/20171222/20107816PcL3t0aWVQ.jpg

今天就先介紹到這裡,下一篇將會帶大家一起美化主題圖,及看看WIDGETS能為我們的主題圖做些什麼。


上一篇
[Day 3] 談互操作性及Web Map Service 標準
下一篇
[Day 5] 資料視覺化工具-CARTO part2
系列文
30天打造我的WebGIS30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言