我在QGIS中有一个由点组成的层。它的属性表没有(显示)每个点的相应x和y坐标。我有办法提取这些点的坐标列表吗? (理想情况下为CSV,但不是必需的)

此外,对于导出的坐标列表(例如,在CSV文件中),如何将现有属性表包括在其中?

供您参考,我正在Mac OS X 10.6.7上运行QGIS。

评论

也许这是此问题的重复:gis.stackexchange.com/questions/7199/…

您可能对我在另一个线程gis.stackexchange.com/questions/1721 / ...中的回答感兴趣...

您还可以使用MMQGIS插件将具有其余图层属性的几何导出到CSV文件。

#1 楼

根据您的版本,您应该能够右键单击要导出的图层,然后从显示的对话框的下拉列表中选择另存为...选择逗号分隔值。然后,在OGR创建选项的“图层”部分中,根据源数据的维度键入GEOMETRY = AS_XY或GEOMETRY = AS_XYZ。



评论


太好了,而且有效!还有一件事:我还可以将原始图层中已有的列以及X,Y坐标一起导出到CSV中吗?谢谢。

– hpy
11年4月22日在16:34

很酷,很高兴它能起作用!确保您未选中“跳过属性创建”复选框。我不喜欢这样的否定复选框,这总是让我三思而后行。

– MerseyViking
2011年4月22日在20:28

非常有用的提示!

–亨氏
2013年6月11日9:27

对于Windows 10(QGIS 4.3.1)上其他人对此保存位置感到困惑的人,请检查“ C:\ OSGeo4W64 \ bin”文件夹。

–瓦萨达莫
19年1月11日在21:03

#2 楼




在属性计算器中很简单,您可以使用$ x和$ y将坐标计算为新属性。

评论


是否可以在不同的坐标系中获得X Y?我的意思是我的点的XY在WGS 84中,但是我想在属性表中列出不同坐标系中的XY值。

–石油
19年11月27日在13:46

#3 楼

您可能会喜欢这样,以收集更多的细节

对于Win7上的QGIS 1.7
我打开图层的属性表,使用按钮进行操作;
反转选择以进行选择所有行,
复制到剪贴板

并粘贴到Excel中。第一列包含众所周知的文本信息,可能对您更有用。另一端的用户...

评论


BWill,我们应该合并您的其他帐户@Willy吗?这将有助于您的声誉并简化此处的互动。

– hu
2012年4月13日在14:42

恢复原始编辑。

– Kirk Kuykendall
2012年4月16日14:33

从属性表复制并粘贴到Excel中时,有时某个功能会占据多行,这会导致覆盖下面一行中的任何数据。

–csk
18年2月26日在19:30

#4 楼

虚拟层使您能够做到这一点。它是“图层”工具栏上的图标,或者您可以转到Layer-> Add layer->添加/编辑虚拟图层...`
然后您将面对一个类似于以下窗口:



在查询中,您可以从属性表中选择x和y坐标的几何属性和属性值,例如示例中的id。

一旦有了表在具有所需字段的情况下,您可以使用save as并选择csv作为格式。



底层引擎使用SQLite和Spatialite进行操作,因此查询文档可以可以在这里找到:
https://www.gaia-gis.it/fossil/libspatialite/wiki?name=misc-docs

#5 楼

几周前,我问了一个类似的问题,即使用QGIS计算点的纬度和经度。不过,这仅适用于QGIS 1.7(我正在OSX上运行,它似乎很稳定)。

#6 楼

对于您的问题,如果您有postgressql和内置的postgis,则可以添加名为coord_x和coord_y的新列来完成。和用于更新此列的sql是:

UPDATE table_name
      SET coord_x = X(the_geom),coord_y = Y(the_geom);


就是这样:)

评论


您认为您可以在gis.stackexchange.com/q/268888/36393这个问题上为我提供帮助吗?

–马可
18年1月23日在10:30

#7 楼

如何在属性表中添加坐标
我只是想在QGIS中查看坐标,因此一直在寻找问题第一部分的答案。上面的信息帮助我制定了解决方案,因此我将向其他QGIS初学者发布。我正在使用Windows10和QGIS 3.4

打开图层属性
选择源字段(最初仅存在id)

选择字段计算器
选择新建字段,输入名称,然后选择十进制数字作为输出字段类型
在右下方列表中选择几何


6。为x coodinate选择$ x并保存
7。通过为y坐标选择$ y重复此操作,您的坐标将出现在属性表中。