API简介、GIS模块
本文这周更新两部分,外加一点点关于Python API学习以来的体会,更多的功能和用法我自己还在尝试。欢迎大家提出问题或者建议。
- 简单介绍一下这个API
- gis模块的概念、相关用法
主要参考教程:
官方教程文档
arcgis.GIS模块参考文档
1. API综述
2. 模块简介
3. gis模块
3. 示例Demo
1.ArcGIS API for Python综述
API到底是什么???
是Python API不是ArcPy,是Python API不是ArcPy,是Python API不是ArcPy!!!。重要的前提概念,我一定要说三遍。为什么呢?因为当我在网站上找相应文档、博客进行学习的时候,通过关键字“ArcGIS Python”搜索,我找到了一大堆一大堆的ArcPy的使用教程。甚至当我第一次接触ArcGIS API for Python,就是在我以之为论文主要方向的时候,我仍白白花费了大量时间去看ArcPy。所以,ArcPy是在ArcGIS桌面端,通过内置的Python编译器进行数据处理的工具。Python API则是Esri公司发行的托管在conda平台的Python开发包,是ArcGIS Online或者ArcGIS Enterprise用户管理自己组织成员、在线资源、进行GIS数据分析的工具包。
API(Application Programming Interface)学名叫做应用程序接口,是开发人员的不同功能、函数进行封装,同一地组织起来,供其他人员通过访问这个接口来实现相应地功能,而不需要使用源码。形象地说,API像许多台串起来得车钥匙。(这是我能想到得比较恰当得比喻了,脑洞有限…OJ2)不同的车对应不同的遥控器,不同的遥控器有不同的按钮来控制车门的开、锁、车窗、后备箱等,你甚至还有有不同的车,电动车、公交车…使用这些遥控器时,根据你今天的需要:带女朋友出去玩,就拿一两台小轿车的钥匙(至于大奔还是什么随便你);自己出门溜达就拿一把电动车钥匙等…
所以Pyhton API就是当你要实现数据访问(=你的出门需求)的功能时,它会给你提供一系列的模块(对应车钥匙)供你选择,具体操作数据比如查询、删除(对应你的选择大奔or五菱)时,给你提供相应的函数或者属性(对应钥匙上的按钮)。所以其实通过API我们可以更便捷地实现对于GIS数据管理、GIS服务操作、以及数据分析,特别是对于托管于ArcGIS Online或者ArcGIS Enterprise的平台的数据和服务。
噢噢。然后呢???
Python API实际上可以看作一个托管于conda平台的Python开发包(事实上也确实是),配置开发环境时我们通过Anaconda来安装。不同于以往的WebGIS开发,我们需要在计算机上安装GIS专用的软件例如处理GIS的软件、发布GIS服务的服务器等等,我们只要求计算机能够执行Python代码,就足够了。虽然Python API原生地与Juypter Notebook(可以理解为一个编译器)绑定在一起,但是原理上VScode也可以运行,不过我尝试,失败了。
和其他的API相比较呢,例如高德地图API、百度地图API、Leaflet、Openlayers、ArcGIS API for JS比较起来的话,Python API有过之且有小不及,API侧重点不一样面向群体不一样。
- 过一:Python适合WebGIS开发编程
- 过二:API功能全面
- 小不及:适合开发人员使用 <