目錄
回复内容:
首頁 後端開發 Python教學 有哪些 GIS+Python 的开发经验值得分享?

有哪些 GIS+Python 的开发经验值得分享?

Jun 06, 2016 pm 04:23 PM
python

我目前能够找到的只有像Python Geo-Spatial Devlopment[1]这样有一定年龄的教学书籍,和零散的技术文章[2]。可是具体该怎么系统学习应用完全没方向,求教。例如mapfish[3],看了一下介绍就觉得很牛逼,可是不会用。。。

[1]Python Geo-Spatial Development (豆瓣)
[2]W-06: Solid Web Mapping with Python
[3]MapFish — MapFish

回复内容:

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等可以发送地图服务

而如今,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

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算法库 1、如果之前没有接触过Python但有一定的编程基础,极力推荐 深入 Python 3 这本书,对比《Python基础教程》的基础全面,这本书更加简洁、实用、上手快。
2、Python与ArcGIS结合,推荐《Programming ArcGIS 10.1 with Python Cookbook》(英文版)这本书,主要使用简短的Python脚本批处理ArcGIS文件,实用、上手快。
附图: 有哪些 GIS+Python 的开发经验值得分享? 请问您自己有看过这本书吗?书中除了代码外,用于操作的数据是该书的作者自己准备的吧?需要去买是吗?比较着急,希望能给于回复哈
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

PHP和Python:解釋了不同的範例 PHP和Python:解釋了不同的範例 Apr 18, 2025 am 12:26 AM

PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。

在PHP和Python之間進行選擇:指南 在PHP和Python之間進行選擇:指南 Apr 18, 2025 am 12:24 AM

PHP適合網頁開發和快速原型開發,Python適用於數據科學和機器學習。 1.PHP用於動態網頁開發,語法簡單,適合快速開發。 2.Python語法簡潔,適用於多領域,庫生態系統強大。

Python vs. JavaScript:學習曲線和易用性 Python vs. JavaScript:學習曲線和易用性 Apr 16, 2025 am 12:12 AM

Python更適合初學者,學習曲線平緩,語法簡潔;JavaScript適合前端開發,學習曲線較陡,語法靈活。 1.Python語法直觀,適用於數據科學和後端開發。 2.JavaScript靈活,廣泛用於前端和服務器端編程。

PHP和Python:深入了解他們的歷史 PHP和Python:深入了解他們的歷史 Apr 18, 2025 am 12:25 AM

PHP起源於1994年,由RasmusLerdorf開發,最初用於跟踪網站訪問者,逐漸演變為服務器端腳本語言,廣泛應用於網頁開發。 Python由GuidovanRossum於1980年代末開發,1991年首次發布,強調代碼可讀性和簡潔性,適用於科學計算、數據分析等領域。

vs code 可以在 Windows 8 中運行嗎 vs code 可以在 Windows 8 中運行嗎 Apr 15, 2025 pm 07:24 PM

VS Code可以在Windows 8上運行,但體驗可能不佳。首先確保系統已更新到最新補丁,然後下載與系統架構匹配的VS Code安裝包,按照提示安裝。安裝後,注意某些擴展程序可能與Windows 8不兼容,需要尋找替代擴展或在虛擬機中使用更新的Windows系統。安裝必要的擴展,檢查是否正常工作。儘管VS Code在Windows 8上可行,但建議升級到更新的Windows系統以獲得更好的開發體驗和安全保障。

visual studio code 可以用於 python 嗎 visual studio code 可以用於 python 嗎 Apr 15, 2025 pm 08:18 PM

VS Code 可用於編寫 Python,並提供許多功能,使其成為開發 Python 應用程序的理想工具。它允許用戶:安裝 Python 擴展,以獲得代碼補全、語法高亮和調試等功能。使用調試器逐步跟踪代碼,查找和修復錯誤。集成 Git,進行版本控制。使用代碼格式化工具,保持代碼一致性。使用 Linting 工具,提前發現潛在問題。

notepad 怎麼運行python notepad 怎麼運行python Apr 16, 2025 pm 07:33 PM

在 Notepad 中運行 Python 代碼需要安裝 Python 可執行文件和 NppExec 插件。安裝 Python 並為其添加 PATH 後,在 NppExec 插件中配置命令為“python”、參數為“{CURRENT_DIRECTORY}{FILE_NAME}”,即可在 Notepad 中通過快捷鍵“F6”運行 Python 代碼。

vscode 擴展是否是惡意的 vscode 擴展是否是惡意的 Apr 15, 2025 pm 07:57 PM

VS Code 擴展存在惡意風險,例如隱藏惡意代碼、利用漏洞、偽裝成合法擴展。識別惡意擴展的方法包括:檢查發布者、閱讀評論、檢查代碼、謹慎安裝。安全措施還包括:安全意識、良好習慣、定期更新和殺毒軟件。

See all articles