導航:首頁 > 編程語言 > gis軟體開發python

gis軟體開發python

發布時間:2022-09-25 15:33:59

『壹』 arcgis 可以用python開發嗎

當然可以。 ArcGIS自帶了 Python 環境,一般使用不要嘗試用別的來代替它。 使用Python,可以完成很多數據處理、自動化制圖的任務。

『貳』 有哪些 GIS+Python 的開發經驗值得分享

python之於GIS與python之於IT類似
GISer採用python的原因也在於「人生苦短,我用python」
python在gis中的應用非常之廣
1. desktop GIS:
ArcGIS從版本10開始不再支持原來的VBA,而改用python
QGIS本身大部分的代碼特別是插件部分可以採用python進行開發
2. 地圖引擎
mapnik—基於C++引擎的頂級地圖引擎庫,和python結合比較緊密
mapfish—支持部分專題地圖在線製作
3. webgis
python+geodjango 是最常用也最龐大的後台框架
GISer使用python一定要充分發揮python語言的特性
如ArcGIS集成phthon是利用了python的腳本語言特性
後台webgis等服務,可以發揮python作為語言黏合劑的特性,充分利用已有的GIS演算法

『叄』 學習網路GIS的開發都需要學習哪些基本的東西

GISer入門指南電子書第一季分享版.pptx免費下載

鏈接:https://pan..com/s/1aq2HNC5YgVGHuc8rNoVUTw

提取碼:wttn

ArcGIS入門級教程,詳細介紹了ArcGIS產品族及成員產品 1、GIS 的概念和需求 2、什麼是ArcGIS 3、Geodatabase中的GIS數據概念 4、桌面GIS產品:ArcView, ArcEditor和ArcInfo等


『肆』 有人用python開發GIS用戶程序么

例子取自<<Learning Geospatial Analysis with Python>>

代碼由兩部分組成。第一部分是數據模型,第二部分是繪制數據(地圖渲染)。

一、數據模型:使用python內置的列表(list),用來存儲空間數據。

[python]view plain

『伍』 有哪些 GIS+Python 的開發經驗值得分享

GIS 和 python 的結合有很多種可能性

Arcpy 參考ArcPy and ArcGIS (豆瓣), pyQGIS 參考PyQGIS Developer Cookbook
Geopython GIS相關庫

GDAL 參考 Welcome to the Python GDAL/OGR Cookbook!
各種空間資料庫,如 spatialite 參考 SpatiaLite Cookbook
基礎庫(抽象庫)
GDAL 不多說,GIS萬物本源
Proj.4 制圖學投影轉換庫
geojson geojson數據處理,點線面
高級庫
Shapley GIS的圖像處理
Fiona GIS數據讀入寫出
Rtree Rtree空間索引
pyproj Proj.4的介面擴展
OWSLib WMS地圖服務發放
basemap 畫地圖
超高級庫
geopandas 整合了pandas,shapely,fiona,descartes,pyproj和rtrees可以直接用於數據處理
geodjango django出品,保護GDAL,GEOS等可以發送地圖服務
參考 Python 筆記三:Geopython GIS相關庫

而如今,javascript在互聯網的地位也變得越來越重要,GIS+JS的項目也氤氳而生,所以問題來了。參考:有哪些GIS+JavaScript(node.js)的開發經驗值得分享? - Node.js

或者關注我的博客,寫得不是很好,希望各路大神多多留言指導。

Awesome GIS(GIS Tech Stack技術棧)
Geomatics專欄點此:Geomatics(GIS,GPS,RS,Surveying)
語言
Python 最好的快速開發語言,是一門API藝術
awesome-python
1簡單的入門
2總結入門坑及基礎資源
3Geopython GIS相關庫
4Python的常用庫入門
5Flask框架
6入門爬蟲坑--網頁數據壓縮(python deflate gzip)
7Requests爬蟲技巧
Node.js 最炙手可熱的網路技術源泉,可用於WebGIS
awesome-javascript
1常用Global庫
2入門及GeoNode.js GIS相關庫
前段
Leaflet 兼容移動端,和現代的一些框架一樣優先考慮移動端
1leaflet入門
2簡單插件編寫leaflet-pip-v2
3進階插件編寫geojsonFilter
Mapbox總有人討論「Mapbox VS Leaflet?」這是個爛問題,Mapbox是Leaflet的超集,就像Typescript和Javascript之間的關系一樣
Openlayer3扯淡大叔教程
Turf js層面做出簡單的空間分析
後端
Geoserver 基於Java的地理信息服務的發布,使用簡單
Mapserver 基於C語言的地理信息服務的發布,內存佔用小
GDAL 數據格式轉換
1GDAL命令行入門
2python for GDAL
3gdal CLI Cheat Sheet
數據格式
GeoJSON 開源地理信息JSON格式
awesome-geojson
geojson-js-utils 空間數據簡單處理js實現
geojson-python-utils空間數據簡單處理python實現
TopoJSON 開源地理信息JSON格式,大小要比GeoJSON小40%
TileJSON 瓦片數據包裝的JSON格式,用的不多
WKT&WKB 文本標記語言表示矢量數據
WKT&WKB 筆記一:格式介紹
資料庫
Spatialite 空間數據的查詢等處理,小項目足矣
1簡單的入門
2CLI Cheat Sheet
3python for Spatialite
4NET平台使用spatilite擴展
5Spatiliate2GeoJson數據的轉換
Postgresql 大型空間數據項目
MBTILES 承載瓦片的數據,快速索引
1入門與簡單應用
瓦片渲染
Global Mapper 專門用作已有柵格圖像切片
Mapnik 專門用於矢量數據的切片
TileMill 在矢量數據渲染時,運用CartoCSS對矢量數據賦予樣式
數據處理
QGIS 開源GIS數據處理桌面軟體,其中包含Grass,SAGA兩個學術界開源GIS平台
1簡單的介紹
2地圖綜合
Mapsharper 數據綜合神器
1地圖綜合神器
數據資料
地理空間數據雲 沒想到數據來的這么快
填坑
1網頁端JS的緩存問題
2Angular遇到的一些坑
3SpatialiteSharp的使用坑
整個技術棧主要針對的是輕量或者小項目去考慮,運用一些流行的盡可能開源的工具去做,這是我的一些想法和筆記,詳情參考從mapbox的開源工具看Web GIS的發展,希望能給您一點點幫助。PS:我在github上看到一個awesome gis,並非我主導的,希望各位GISer可以一起參與修改。
轉載,請表明出處。總目錄Awesome GIS

『陸』 有哪些 GIS+Python 的開發經驗值得分享

AngularJS 與 jQuery 等傳統操作 DOM 的思想有所不同,

對於 jQuery 等,一般是先有完整 DOM 然後在這些 DOM 的基礎上進行二次調教。
而 AngularJS 等框架則是 根據 數據模型 以及其對應的 DOM 模版,然後通過模版像搭積木那樣組合頁面。

顯然的,前者在 SEO 上有天然優勢;而後者,搜索引擎還只能拿到某個模版,而無內容。
暫時沒想到有什麼特別好的解決方案,或許,對於內容頁,可以繼續使用傳統方式,而只在需要更多交互的地方應用 AngularJS,特別是在移動端應用上。

同理適用於各種 前端的 MVC 框架,後端只要為前端提供數據介面,而不再需要為其拼接 HTML.

## 模塊化

AngularJS 也是遵循 AMD 的。(AMD 是啥,參考:使用 AMD、CommonJS 及 ES Harmony 編寫模塊化的 JavaScript)

雖然它也可以按照傳統代碼方式來寫(其首頁介紹的用法 AngularJS — Superheroic JavaScript MVW Framework),但是,既然都提供了這么一種模塊的方法,為何不用上呢

angular.mole('app', [
'moleA',
'moleB',
])
.controller('MainCtrl', [
'$scope',
function ($scope) {

}]);

而且,這種寫法還可以方便做代碼的合並與壓縮,在後面 Grunt 自動化 一節中,就會提到使用 Nodejs/Grunt 來自動的做這些事情。

## 可復用模版 or 業務邏輯模版

今年 Google 開發者大會中 提到的 Polymer(Welcome - Polymer)
這貨讓人感覺像是 Angular Directives 的進化。

而 Directives 做的事,就是把一堆 DOM 封裝為一條或者一組 自定義的 HTML標簽,作為可復用的模版,以供組裝業務調用。 Demos 可參看:Angular directives for Twitter's Bootstrap

當然,為了方便修改,很多時候在做 directive 的時候需要將 template 用 templateUrl 代替,
不用擔心文件的碎片化,不利於前端載入 Grunt 自動化 一節 會提到如何合並這些碎片化的 模版。

Directives 是作為可復用的模版,
而業務邏輯則是一般是一個業務對應一個 html 及其的 controller.

『柒』 有哪些 GIS+Python 的開發經驗值得分享

AngularJS 與 jQuery 等傳統操作 DOM 的思想有所不同,

對於 jQuery 等,一般是先有完整 DOM 然後在這些 DOM 的基礎上進行二次調教。
而 AngularJS 等框架則是 根據 數據模型 以及其對應的 DOM 模版,然後通過模版像搭積木那樣組合頁面。

顯然的,前者在 SEO 上有天然優勢;而後者,搜索引擎還只能拿到某個模版,而無內容。
暫時沒想到有什麼特別好的解決方案,或許,對於內容頁,可以繼續使用傳統方式,而只在需要更多交互的地方應用 AngularJS,特別是在移動端應用上。

同理適用於各種 前端的 MVC 框架,後端只要為前端提供數據介面,而不再需要為其拼接 HTML.

## 模塊化

AngularJS 也是遵循 AMD 的。(AMD 是啥,參考:使用 AMD、CommonJS 及 ES Harmony 編寫模塊化的 JavaScript)

雖然它也可以按照傳統代碼方式來寫(其首頁介紹的用法 AngularJS — Superheroic JavaScript MVW Framework),但是,既然都提供了這么一種模塊的方法,為何不用上呢

angular.mole('app', [
'moleA',
'moleB',
])
.controller('MainCtrl', [
'$scope',
function ($scope) {

}]);

而且,這種寫法還可以方便做代碼的合並與壓縮,在後面 Grunt 自動化 一節中,就會提到使用 Nodejs/Grunt 來自動的做這些事情。

## 可復用模版 or 業務邏輯模版

今年 Google 開發者大會中 提到的 Polymer(Welcome - Polymer)
這貨讓人感覺像是 Angular Directives 的進化。

而 Directives 做的事,就是把一堆 DOM 封裝為一條或者一組 自定義的 HTML標簽,作為可復用的模版,以供組裝業務調用。 Demos 可參看:Angular directives for Twitter's Bootstrap

當然,為了方便修改,很多時候在做 directive 的時候需要將 template 用 templateUrl 代替,
不用擔心文件的碎片化,不利於前端載入 Grunt 自動化 一節 會提到如何合並這些碎片化的 模版。

Directives 是作為可復用的模版,
而業務邏輯則是一般是一個業務對應一個 html 及其的 controller.

『捌』 有哪些 GIS+Python 的開發經驗值得分享

python之於GIS與python之於IT類似
GISer採用python的原因也在於「人生苦短,我用python」
python在gis中的應用非常之廣
1. desktop GIS:
ArcGIS從版本10開始不再支持原來的VBA,而改用python
QGIS本身大部分的代碼特別是插件部分可以採用python進行開發
2. 地圖引擎
mapnik—基於C++引擎的頂級地圖引擎庫,和python結合比較緊密
mapfish—支持部分專題地圖在線製作
3. webgis
python+geodjango 是最常用也最龐大的後台框架

GISer使用python一定要充分發揮python語言的特性
如ArcGIS集成phthon是利用了python的腳本語言特性
後台webgis等服務,可以發揮python作為語言黏合劑的特性,充分利用已有的GIS演算法庫

閱讀全文

與gis軟體開發python相關的資料

熱點內容
自拍軟體文件夾名稱大全 瀏覽:321
程序員留學移民 瀏覽:47
梁中間部位箍筋加密區 瀏覽:117
頻譜分析pdf 瀏覽:750
樂2怎麼升級安卓70 瀏覽:172
java中獲取日期 瀏覽:506
單片機74hc245 瀏覽:272
美國歷史上的總統pdf 瀏覽:751
程序員脫單實驗室靠不靠譜 瀏覽:458
php中間四位手機號 瀏覽:869
永旺app怎麼樣了 瀏覽:516
壓縮空氣流量計算軟體 瀏覽:649
智慧聊天app怎麼激活 瀏覽:924
一加換機備份到哪個文件夾 瀏覽:735
支撐pdf 瀏覽:417
java空文件夾刪除 瀏覽:587
安卓9跟81有什麼區別 瀏覽:912
n1藍寶書pdf 瀏覽:244
為什麼安卓機拍照那麼丑 瀏覽:695
伺服器綁定雲產品實例 瀏覽:315