QGIS 入门演示之《用 QGIS 画矢量交通路线图

脚本编程之准备知识《Python 教程

QGIS API

QGIS插件库

运行QGIS脚本,对于桌面应用来讲有4种方式:

  • QGIS 启动时自动运行Python脚本
  • QGIS 控制台中运行发布的Python命令
  • 创建Python写的插件
  • 创建基于QGIS API的应用程序

QGIS服务端绑定:

  • 2.8 开始,QGIS服务端包含Python插件 (see: Server Python Plugins)
  • 2.11开始 (2015-08-11), QGIS 服务库包含Python 绑定,可以在Python应用中嵌入QGIS服务。

1、 启动脚本

启动脚本可以通过指定环境变量PYQGIS_STARTUP来指定启动时运行的脚本。也可以编辑位于安装目录.qgis2/python/startup.py 文件。

2、控制台

通过菜单:Plugins ‣ Python Console 来打开。

3、插件

如何创建插件

4、应用程序

1) 独立脚本

使用PyQGIS 来创建脚本

from qgis.core import *

# supply path to qgis install location
QgsApplication.setPrefixPath("/path/to/qgis/installation", True) # create a reference to the QgsApplication, setting the
# second argument to False disables the GUI
qgs = QgsApplication([], False) # load providers
qgs.initQgis() # Write your code here to load some layers, use processing algorithms, etc. # When your s

2)自定义程序

from qgis.core import *

# supply path to qgis install location
QgsApplication.setPrefixPath("/path/to/qgis/installation", True) # create a reference to the QgsApplication
# setting the second argument to True enables the GUI, which we need to do
# since this is a custom application
qgs = QgsApplication([], True) # load providers
qgs.initQgis() # Write your code here to load some layers, use processing algorithms, etc. # When your script is complete, call exitQgis() to remove the provider and
# layer registries from memory
qgs.exitQgis()

Qgis 里的Python脚本介绍的更多相关文章

  1. ORM基础3 在python脚本里调用Django环境

    1.查询 1.# all获取所有的object,结果QuerySet,列表 print('all'.center(80, '=')) ret = models.Person.objects.all() ...

  2. 用Py2exe打包Python脚本简单介绍

    一.简述      Py2exe,从这个名字上就可以理解,把Python脚本转换为windows平台上面可以运行的可执行程序(*.exe)的工具.经过转换后,你可以不 用安装Python的执行环境就可 ...

  3. 使用NuGet打包并发布至ProGet过程 (步骤详细,附python脚本)【上篇】

    一.基本知识 (1)NuGet : NuGet是一个为大家所熟知的Visual Studio扩展,通过这个扩展,开发人员可以非常方便地在Visual Studio中安装或更新项目中所需要的第三方组件, ...

  4. 从零开始学Python第0周:Python基本介绍(部分内容来源于网络)

    Python入门介绍 一,Python的基本介绍 (1)概要 Python是一种解释型,面向对象,动态数据类型的高级程序设计语言.常被广泛用于处理系统管理任务和web编程.现如今Python已经成为了 ...

  5. 【转】Python Twisted介绍

    Python Twisted介绍 作者:Jessica McKellar 原文链接 Twisted是用Python实现的基于事件驱动的网络引擎框架.Twisted诞生于2000年初,在当时的网络游戏开 ...

  6. 打包python脚本为exe可执行文件-pyinstaller和cx_freeze示例

    本文介绍使用cx_freeze和pyinstaller打包python脚本为exe文件 cx_freeze的使用实例 需要使用到的文件wxapp.py, read_file.py, setup.py ...

  7. 如何解决Python脚本在Linux和Windows上的格式问题

    python是一种对缩进有严格要求的语言, Python脚本可以使用非常多的工具进行编写,笔者在Linux系统使用JEdit进行Python脚本编写,由于在Linux编写脚本比较痛苦,比如想一眼看出相 ...

  8. 将Python脚本打包成可执行文件

    Python是一个脚本语言,被解释器解释执行.它的发布方式: .py文件:对于开源项目或者源码没那么重要的,直接提供源码,需要使用者自行安装Python并且安装依赖的各种库.(Python官方的各种安 ...

  9. Python入门介绍

    Python入门介绍(人生苦短,我用 Python) Python简介 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹 ...

随机推荐

  1. mybatis学习之分页

    分页一般分为物理分页:先查询所有值再分页输出,逻辑分页:直接分页查询输出,mybatis支持物理分页,如下: 1.物理分页: mapper映射: <select id="findStu ...

  2. 从Java虚拟机角度分析类的实例化顺序

    1.首先展示一下实例代码(Son.java & Father.java) public class Father { public static int a=10;//父类的静态变量 stat ...

  3. 初识http2.0

    初识http2.0 HTTP2.0性能增强的核心:二进制分帧 HTTP 2.0最大的特点: 不会改动HTTP 的语义,HTTP 方法.状态码.URI 及首部字段,等等这些核心概念上一如往常,却能致力于 ...

  4. TransitionEnd事件

    定义和用法: transitionend 事件在 CSS 完成过渡后触发. 注意: 如果过渡在完成前移除,例如 CSS transition-property 属性被移除,过渡事件将不被触发. 浏览器 ...

  5. BZOJ4698: Sdoi2008 Sandy的卡片(后缀数组 二分)

    题意 题目链接 Sol 不要问我为什么发两篇blog,就是为了骗访问量 后缀数组的也比较好想,先把所有位置差分,然后在height数组中二分就行了 数据好水啊 // luogu-judger-enab ...

  6. C#虚基类继承与接口的区别

    类:定义新的数据类型以及这些新的数据类型进行相互操作的方法 定义方式: class Cat { } class Cat:object { } C#中所有的类都是默认由object类派生来的,显示指定或 ...

  7. Thrift-RPC client in Flume

    Get RpcClient from RpcClientFactory with Reflection programming Message or Event definition in Flum ...

  8. 04_ActiveMQ事务与三种签收方式

    [ActiveMQ添加事务] 添加事务主要注意两点: 1.修改Session配置,启用事务 /** * 3.通过Connection对象创建Session会话(上下文环境对象),用于接收消息. * 参 ...

  9. 微信小程序开发3-小程序的代码组成

    1.​小程序由配置代码JSON文件.模板代码 WXML 文件.样式代码 WXSS文件以及逻辑代码 JavaScript文件组成 2.JSON: (JavaScript Object Notation) ...

  10. PHP | 别家网站都有的登录功能,你的网站也可以有!

    如果说一个网站是一个独立的王国,那登录功能就相当于这个[王国]的大门.进出往来的人必须要通过这道[门]才能进出这个[王国],这样才能有效的达到对人流量和用户的有效监管,也可以进一步了解每个用户的喜好, ...