2019年3月25日 星期一

LESSON-003 2019-03-26

導言:

   對於一個程式開發者或者學習者而言,
   開發環境的設定是除了(程式的)語法外,最重要的一個環節。

   程式碼的撰寫者如果是一個園丁,你寫的程式就是你種下的種子,
   而 "開發環境" 就是你準備給種子生長的 土壤與溫室。

   而python 的園丁們,想要你的種子能發芽,你所要關心的議題至少要包含
  • 要安裝哪一個版本的python(本課程選擇 OSGeo4W64 所內涵的 python 3.7)
  • 每一個版本的python 到底有甚麼不同?
  • 要裝哪一種編寫與除錯軟體(本課程選擇 Visual Studio 2017 Community)、
  • 要安裝那些第三方軟體?
  • 如何安裝這些第三方軟體 ?
  • 這些安裝的軟體都裝在那些目錄?
  • 我寫的程式要如何才能,分享給別人,或者copy到別的電腦還能執行?
  • 我要怎麼把自己寫的程式變成(模組),使我可以在未來還可以重複使用?
  • 第三方軟體與自行開發的軟體要安裝在哪個路徑?
  • 如果自己沒辦法寫,要引用別人的python 程式,要怎麼才能正確執行?

   一般市面上的工具書(很不幸的),只會教你程式的語法,並沒有對於開發環境做太多說明。
本節分享的內容,特將MS windows (10) 環境下,常見的設定問題做一些整理。
錯過這個嚮導課程的初學者,很容易就會迷失在
  {明明都照書上教的寫,可是就是沒辦法執行} 的巨大迷霧中無法脫身。
建議初學Python 的初學者千萬不要錯過。

討論大綱

3.1 python 的系統環境設定
    系統的路徑變數(path)
    Python 的路徑搜尋變數(pythonpath)
    安裝第三方模組與所在路徑 pip install and site package path
    開發者的模組路徑  與設定 (user' module path and__init__.py file)

3.2 Visual Studio 2017  Community Python Project

3.3 Visual Studio 2017  Python Environment

3.4 Visual Studio 2017 Team Project

2019年3月18日 星期一

LESSON-002 2019-03-19


Unit 1 Python Console

1.1 QGIS Python Console
1.2 QGIS Python Edit
1.3 Install Thrid-party Python Modules
      run command mode as administrator
      cd OSGeo4W64\apps\Python37
      python -m pip install (3d-Module)

Unit 2 Python Script
2.1 python indent
2.2 import module
2.3 for loop
2.4 if condition

Unit 3 Pandas (Python module)
3.1 read excel
3.2 access
3.3 write to excel/SpatiaLite

課程範例檔案(下載專區)

這個範例,是以中央氣象局的 地震公告資料為範例。
向大家說明如何利用 python 自動讀取網頁的資料。
如何轉換成 EXECEL存檔。
是的,不用60行的程式碼。

  • 就可以自動從網站下載。
  • 存檔。 
  • 轉換格式。
  • 轉存成EXCEL。
  • 再加上使用者的簡易計算。 請參考。

明日參與的夥伴 需要攜帶notebook pc /系統內安裝 qgis(osgeo4w64) (vs2017community) 及自行下載本範例檔案。
其他範例檔案(下載專區)


2019年3月11日 星期一

LESSON-001 2019-03-12


Unit 1  QGIS UI
1.1 新專案
1.2 地圖
1.3 增加一個圖層
1.4 GIS 資料檔
      1.4.1 Shapefile
      1.4.2 Spatialite
1.5 Database UI

Unit 2 GIS Data Format
2.1 GIS 檔案內包含哪些資訊
2.2 欄位的型別
2.3 中文字碼的轉換
2.4 座標系統與SRID

Unit 3 how to import data
3.1 如何 import csv/excel 檔
3.2 如何 將 csv/excel 內檔轉換成 GIS DATA


Unit 4 Layer Style and Print Layout
4.1 Layer Style
4.2 Print Layout

自製教材(GIS檔/範例資料下載專區)

2019年3月5日 星期二

LESSON-000 課前準備/目的/簡介

Python and QGIS (NumShield Tuesday)


各位夥伴大家好!

課前準備
要來參加Python and QGIS 技術討論的夥伴,
請準備自己的(筆記本)電腦,並且在你的電腦安裝
1. 作業系統 建議 (win10 64bit)

2. QGIS 安裝 OSGeo4W 64bit
    請參考相關youtube 影片

3. MS VS 2017 Community
    請參考相關youtube 影片

活動目的
 
為了 {專題計畫}能順利進行,本專案中所需的GIS資料,將統一使用Python 程式與QGIS軟體進行研發與彙整。預定為新進專案人員、參於研究生(包含台灣大學、中原大學)、相關協力單位人員與本中心對本主題有興趣的同仁,提供Python 程式開發與 QGIS  技術教學 。

活動簡介 
會議時間:預定為每周二 (12:00 -15:30)  (108.3.12 - 108.11.26)
會議地點:3月底前 地震中心 606會議室(4月後的會議地點 隨機調整 另行通知)
會議議程

12:00-14:00   專案任務說明 與 課前準備。

14:00-14:30      技術專題說明
                         由楊承道博士擔任講員講解 Python 程式開發 與 QGIS技術教學。
                         非本專案人員可參與此時段參加研討。

14:30-15:30   Q/A 與 會議影片紀錄。