Questions tagged «pyqgis»

QGIS的Python绑定。

13
寻求QGIS教程和Web资源?
我希望熟悉QGIS 3.0版及更高版本中的QGIS功能。 您能推荐一些好的Web资源和教程来向我展示QGIS的功能吗? 我对通过GUI使用QGIS和使用QGIS开发应用程序都感兴趣。

4
沿着PyQGIS生成相等大小的多边形?
我想沿着一条线创建多边形,以在下一步中将它们用于AtlasCreator。 ArcMap有一个称为“ 带状地图索引要素”的工具。 使用此工具,我可以选择多边形的高度和宽度(例如8km x 4km),并自动沿线生成/旋转它们。 每个多边形生成的属性之一是随后需要在Atlas Generator中旋转我的向北箭头的旋转角度。 有谁知道如何在QGIS中/使用pyQGIS解决此任务?也可以在自定义插件中使用的Grass或SAGA算法或prosssings-toolbox-model也很好;)Edit1:我不仅需要打印范围,而且还需要多边形本身,因为我想用所有多边形/范围作为某种总览图。 Edit2:我提供了一个赏金,因为我仍在寻找一种可以在QGIS-Plugin中使用的PyQGIS解决方案,而无需在QGIS之外安装软件(没有像PostGIS / Oracle这样的RDBMS)

3
如何从外部运行QGIS的简单python脚本(例如Sublime Text)?
我想从QGIS的“外部”为QGIS(Mac)运行一些小型而简单的python脚本。在这种情况下,外部是指普通的os命令行(terminal.app)甚至更好,直接从Sublime Text(文本编辑器)中退出,但绝对不是通过内置的QGIS python控制台。 我已经阅读了各种教程,例如http://www.qgis.org/pyqgis-cookbook/intro.html#python-applications,并且能够获得对QGIS应用程序的引用,但不幸的是,我没有得到它qgis.utils.iface或更深层次的介绍。例如,这个小代码段应打印出活动层的名称...这是我所拥有的: import sys sys.path.append("/Applications/QGIS.app/Contents/Resources/python") from qgis.core import * import qgis.utils print "helo" # console output: helo QgsApplication.setPrefixPath("/Applications/QGIS.app/", True) QgsApplication.initQgis() print QgsApplication # console output: <class 'qgis.core.QgsApplication'> print qgis.utils.iface # = console output: none aLayer = qgis.utils.iface.activeLayer() print aLayer.name() QgsApplication.exitQgis() 现在请不要回复我如何创建插件或其他“繁重的”东西。我只是在寻找一种快速简便的方法来将脚本从舒适的文本编辑器中拍摄到QGIS。
37 pyqgis 

1
在PyQGIS中绘制垂直线?
我有这样的情况: 我需要做的是将每个点连接到距该点最多200 m的每条线。换句话说,我需要从每个点到缓冲区中的每条线绘制一条垂直线。 在PyQGIS中有没有办法做到这一点?

4
遍历QGIS Python中的地图图层?
我在弄清楚如何遍历地图图层时遇到麻烦。我可以通过以下方式访问目录中当前突出显示的图层,iface.activeLayer()但我希望我的代码在所有图层上均可使用。 我在API中看不到任何可轻松访问此功能的东西,找不到很好的在线示例,但也许我错过了什么?
30 pyqgis  layers 

4
开发依赖于外部Python库的插件
我正在开发一个Python插件,目标是将称为“海拔”的PyPI Python库的功能集成到QGIS中。 有没有一种独立于操作系统的方式来安装外部Python库并使它们可用于Python插件? 我已经知道用于安装外部Python依赖项的不同系统特定过程,我想做的就是在不同环境中分布我的插件而不会让人发疯。 我已经知道的 搜索网络和其他类似问题,似乎没有独立于操作系统的解决方案。 Windows用户 Python打包并分发在QGIS软件包中,因此,要安装外部Python库,您必须先经过OSGeo4W Shell,然后从那里使用pip。 相关链接: QGIS独立版和Python模块 将Python setuptools安装到OSGeo4W Python中 如何在Windows上为QGIS安装第三方python库? OS X用户 在这种情况下,QGIS使用内置的Python,它预先包装在OS X内,位于: /usr/bin/python 这里的问题是,默认安装的pip有一些限制,并且需要太多特权。 一种快速的解决方法是使用自制软件安装Python,以便您的pip可以在用户可修改的Python框架上运行。在这里查看此方法的详细信息。 通过pip安装所有Python库之后,只需要将其目录添加到PATH变量中。 OS X用户的另一种方法 在插件Python代码内部,您可以使用系统提供的pip来安装所需的软件包。然后,您可以使刚刚安装的软件包可访问,并将其添加到路径中。 import sys import pip pip.main(['install','--target=/Devel/test', 'elevation']) sys.path.append("/Devel/test") 自制但可行的解决方案(在Linux和OS X上均经过测试) 我决定采用替代方法,因为它允许将库的更新和维护与插件分开。每次新用户安装插件时,pip都会直接下载并安装最新版本的海拔库。 self.plugin_dir = os.path.dirname(__file__) self.elevation_dir = os.path.join(self.plugin_dir, 'elevation') # Checking the presence of elevation library …

1
QGIS 3插件文件夹位置
我正在搜索QGIS 3 Plugin文件夹的默认位置 我在这里检查但找不到: C:\ Program Files \ QGIS 3.0 \ apps \ qgis \ python \ plugins C:\ Users \ Abhijit.qgis2(无法找到.qgis3,应该在其中吗?)

2
qgis_core可以与外部python发行版(例如Anaconda)一起使用吗?
我建立了一个具有自己的GUI的python应用程序。我正在尝试仅将qgis.core / PyQGIS用作地图显示。具体来说,我有anaconda 2.3及其python发行版(2.7.11)。 在研究了该线程上的发布之后,似乎只有当我正在构建的应用程序(或其他任何人的应用程序)需要“驻留在QGIS世界中”(即将所有依赖项移至QGIS的python发行版)时,该方案才能起作用。可以有人(最好是来自QGIS团队)对此给出明确的答案。
23 qgis  python  pyqgis  anaconda 

1
在Python中访问QGIS插件?
有没有办法在Python中访问QGIS插件? 我想编写一个脚本来进行一些地理处理,我想使用fTools中的剪辑,正点和凸包工具以及Road graph插件。后者可能是另一种蠕虫病毒,因为它是C ++而不是Python插件。

2
使用来自独立PyQGIS脚本的QGIS3处理算法(GUI外部)
我正在编写必须在QGIS GUI外部运行的脚本。我从qgis.core调用了一些API函数,但我想使用处理插件。 我可以使用sys.path.append()导入处理,但无法运行任何进程。此外,QgsApplication.processingRegistry()。algorithms()中缺少所有“本机”算法 那么有可能以这种方式运行处理吗?我想念什么? import os, sys from qgis.core import * QgsApplication.setPrefixPath('/usr', True) qgs = QgsApplication([], False) qgs.initQgis() sys.path.append('/usr/share/qgis/python/plugins') from processing.core.Processing import Processing Processing.initialize() import processing layer1 = QgsVectorLayer('data/ROUTE_PRIMAIRE.SHP') layer2 = QgsVectorLayer('data/ROUTE_SECONDAIRE.SHP') processing.run('qgis:union', layer1, layer2, 'test.shp') # returns nothing 我正在使用QGIS 3.0.1-Debian 9

2
如何以编程方式创建新的空矢量层?
我是python和QGIS的新手。我看过一些QGIS的python脚本教程。它们全都使用一些现有数据源创建新的矢量和栅格图层。例如。shapefile或geotiff或postgis数据库表。 是否可以通过python脚本创建QGIS层,我可以在需要时通过python脚本创建/添加/修改新功能。它通常是带有点数据和自定义符号的矢量层。 这有可能吗?有没有我可以看的例子?
21 qgis  pyqgis 

2
是否在QGIS3中删除了QgsMapLayerRegistry?
是QgsMapLayerRegistry要在与QGIS3 pyqgis速效 当我在QGIS python控制台(2.99)中键入它时,python似乎可以识别它,因为它会自动完成qgis.core.QgsMapLayerRegistry,但是会出现一个错误,提示它不存在: Traceback (most recent call last): File "/usr/lib/python3.5/code.py", line 91, in runcode exec(code, self.locals) File "<input>", line 1, in <module> AttributeError: module 'qgis.core' has no attribute 'QgsMapLayerRegistry' 我用两个版本的QGIS 2.99进行了尝试(一个版本是01/07,然后是06/17)。两个版本给出相同的错误。import也不起作用: >>>from qgis.core import QgsMapLayerRegistry Traceback (most recent call last): File "/usr/lib/python3.5/code.py", line 91, in runcode exec(code, self.locals) File …
20 qgis  pyqgis  qgis-3 

4
与QGIS相关的Python文献
Python for ArcGIS是我一直在看的书。有谁知道这是否适用于QGIS?我不是要编写应用程序/插件,只是要更好地理解标准工作流程的表达式等。例如查询和数据定义的设置。

3
以编程方式检查PyQGIS中的鼠标单击?
我想知道如何在QGIS中检查鼠标单击。我正在尝试编写python插件,并希望提供类似于QGIS中已经存在的“选择单个功能”工具的功能。 我检查了QGIS api文档并发现 QgsMapCanvas::CanvasProperties::mouseButtonDown 这听起来很有希望。我有一个QgsMapCanvas对象,但看不到如何访问mouseButtonDown属性。 我对QGIS API完全陌生。


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.