问题标签 [pyqgis]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
32 浏览

plugins - 使用插件创建的功能未正确保存 - QGIS

我正在编写一个插件,它将不同的多边形添加到图层中。Shapefile 的路径在 lineEditV 中定义,然后添加到项目中。新创建的多边形的坐标与在 comboBoxVestas 中选择的图层的坐标相关。一切运行良好,但是当我关闭项目并随后重新打开它时,所有功能和属性都被删除,它仍然只是一个“空”的 Shapefile。我在使用 PyQGIS 编程方面没有太多经验,并且已经尝试了很多来找出问题,但一切都失败了。那么,有谁知道我做错了什么?

0 投票
2 回答
144 浏览

csv - 在 PyQGIS QGIS 3.10 中从 CSV 加载点图层

我正在尝试使用从 CSV 加载到点层的脚本。我使用的代码是:

uri = "file:///some_path/PyQGIS/Some.csv?delimiter={}&xField={}&yField={}".format(os.getcwd(), ";", "X", "Y")

vlayer = QgsVectorLayer(uri, "Name", "delimitedtext")

QgsProject.instance().addMapLayer(vlayer)

.csv 文件的结构如下: SomeValue ----- X ----- Y

因此,坐标根据 Amersfoort (EPSG:4289) 放置,例如:X = 213404,Y = 500846。尝试手动加载时,一切正常。但是在脚本中,它似乎不起作用。澄清一下:使用的分隔符是 ;

提前致谢。

0 投票
0 回答
84 浏览

python - PyQGIS:从新图层中删除过滤器

我目前正在编写一些代码,它从另一层的选定特征创建一个新层。

这似乎可行,但是这些点未显示在新图层中,并且当我检查属性表时,它说所有元素都已过滤。为什么?以及如何移除过滤器?

0 投票
0 回答
46 浏览

python - pyqgis - 编辑属性表;记录 NULL 而不是 "0.0"

我正在写一个函数在属性表中注册值进行记录:

如果 self.relative Closeness [i] 有一个值!= 0,值将正确记录,但如果值为== 0,则在属性表中值将记录为“NULL”值。谁能帮我理解问题出在哪里? 具有空值而不是零值的属性表示例

0 投票
1 回答
28 浏览

python - 在已存在的目录名称后添加数字

对于我的 QGIS 插件,我想编写一个 python 脚本,如果该目录已经存在,则在目录名称后添加一个序列号,与 Windows 在多次下载同一个文件时的方式相同。但我不知道如何实现这一点。

例如:

如果该目录'C:/Dossier'已经存在,则新目录将是'C:/Dossier(1)' 等等。

先感谢您。

0 投票
1 回答
210 浏览

gdal - PyQGIS 3.18.2 从符号系统中删除波段名称

我最近更新了我的 QGIS,我注意到样式现在显示了乐队Band 1(Gray) 在此处输入图像描述 在此处输入图像描述

问题是它现在显示在我的打印布局中: 在此处输入图像描述

使用 PYQGIS,我怎样才能只删除Band 1 (Gray)?

作为参考,这是我当前在布局中设置图例的方式:

谢谢!

0 投票
1 回答
299 浏览

python - Visual Studio Code 升级到 1.56.0... Windows 环境问题

在上次 Visual Studio Code 更新之前,我能够设置 windows 环境变量。现在有了新的更新,我不能也不知道该怎么办。

我的代码很长,所以为了简化它,我尝试更改 windows 提示符,看看我是否能找到解决方案。

预期结果是:

在此处输入图像描述

在此处输入图像描述

0 投票
0 回答
86 浏览

python - 使用python的Qgis插件构建器

我正在尝试在 qgis 中创建插件。我使用 3 个组合框创建插件工具对话框,其中我从 qgis 层获取数据作为输入,我需要 2 和 3 个组合框的编码来列出输入层数据帧索引。

我使用代码在第一个组合框中获取图层

在此处输入图像描述

在此处输入图像描述

在组合框 2 和 3 中列出

在此处输入图像描述

0 投票
0 回答
83 浏览

python - 列出组合框中的数据框/属性行

使用线条

在此处输入图像描述

在此处输入图像描述

例如,我通过 Combobox 根据上图获取输入,然后我需要在 Combobox_1、Combobox_2 中列出 Well_no Latitude Longitude Years EC_GEN 像这些。请给你的建议...

0 投票
0 回答
65 浏览

numpy - pyqgis:从列表中创建多层(自动)

我有以下列表(从 numpy 列表转换为 QgsPoint),并希望为该列表中的每个单独数组创建层。有解决办法吗?

我将 numpy 数组转换为 QgsPoint:

因此我得到:

并且想为 my_list[0], my_list[1] ... my_list[i] 中的每个数组获取层不幸的是,以下方法不起作用,因为它是一个列表:

有什么解决办法吗?