鐵人賽Day 2-webGIS初步

web

webgis:從Client端及Server端談起

Clinet端:

跟一般網頁應用程式一樣,webgis需要前端程式與使用者互動,要開發一個webgis,開發者可以使用各種前端框架。
然而,要炒一盤webgis的菜,就必須要有專屬於gis/地圖的前端框架

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

這些框架主要功能包含提供地圖,圖層渲染,基本地圖互動、介接資料等功能,Javascript常見的webgis框架包含:

  • (1)leaflet
  • (2)openlayers
  • (3)google maps api
  • (4)esri javascript api

一個地圖框架提供我們基本地圖操作,把地圖元素(含空間坐標物件)轉換成前端可操作的元件(DOM等),而為使地圖互動更生動活潑,其它前端工具當然也是可以整合進來的,包含Jquery, Vue, React, Angularjs…甚至D3.js, C3.js等可能都需要整合在webGIS中。

鐵人賽Day 1-webGIS:資訊時代的地理大發現

web

webGIS-資訊時代的地理大發現

在現代的網頁應用中,地圖應用已經成為了不可或缺的網頁元素,一個現代網頁中,有了地圖應用,可以讓使用者查詢空間資訊;開發者亦可實踐各種LBS(Location Based Services)及IOT(Internet of Things)的應用。

目前網路上有許多開發資源可以協助我們建構一些地圖應用,並且透過資料視覺化及UI/UX,使空間資訊有效地呈現給user,user也可以request資訊,讓系統是雙向互動的,相關的應用國內外都有很多案例。

然而,目前線上整合這些資源且能涵蓋背後相關技術的完整介紹並不多,我們團隊希望藉由2018 IT邦鐵人賽機會,除整合資源應用外,再加碼一些GIS相關技術面探討,目標是運用開源軟體,30天打造一個webGIS系統

annaconda python環境快速搭建

annoconda快速搭建

1.下載


首先去annconda官網下載
選擇x64環境或是x86之安裝檔
例如要跑arcpy必須在x86 環境執行
經測試x86 跟x64 annaconda可以並存

2. 安裝

1.一鍵安裝Anaconda

2.Anaconda Navigator

  • 設定環境(例如設定python2.7, python3.6環境)

3.使用conda prompt

  • pip install 可擴充相關模組

4.IPython

  • 逐行操作

5.使用spyder

  • run, variable viewer

3.模組

1.Anaconda 32bit- with python2.7

2.Archook Arcpy

  • 找尋環境中的python路徑 -Github Githook
  • pip install archook
    1
    2
    3
    4
    5
    6
    python=1
    import archook #The module which locates arcgis
    archook.get_arcpy()
    import arcpy

    #下面就可以寫python了#

4.基本操作

1.if

2.for

3.list, array,tuple

============================

5.常用模組

1.shapefile

2.math,csv

3.繪圖matplotlib

Hello Hexo

web

Hexo 是基於node.js 開發的部落格框架,文章內容主要是以markdown撰寫,並可藉由hexo-git-deploy部署到 Github pages靜態網頁服務
部署完成後網址: https://<帳號>.github.io

  • 官網 Hexo ps.似乎國人開發的
  • 主題包 themes

搭建Hexo步驟如下

  • 安裝Node.js
  • 安裝Hexo

    1
    $ npm install hexo -g
  • 創建專案資料夾,並在裡面初始化
    初始化:

    1
    $ hexo init
  • 喜好設定 _config.yml (可使用預設)

    • 喜好設定 下載next主題(官網有很多主題)

      1
      git clone https://github.com/iissnan/hexo-theme-next.git themes/next
    • 喜好設定 修改_config.yml的theme為next

      1
      - theme: next
    • 喜好設定 修改theme/next/_config.yml的menu項目自定義選單

  • 如果要新增貼文

    1
    $ hexo new post hello world
  • 如果要新增頁面

    1
    $ hexo new page about
  • 編譯

    1
    $ hexo generate
  • 在本機運行

    1
    $ hexo server
  • 如要部署到Github.io

    • 創建一個repository名稱為<帳號>.github.io
    • 在repository開通Github pages
  • 設定好 _config.yml 的 deploy參數 (github), 部署

    Docs: https://hexo.io/docs/deployment.html

    1
    2
    3
    4
    deploy:
    type: git
    repository: git@github.com:<帳號>/<帳號>.github.io.git
    branch: master
    1
    $ hexo delploy