QGIS中是否有“制表区”功能?


9

我有一个有关意大利北部土地使用情况的栅格文件(作物/市区等)。

我在矢量层的某些给定点周围定义了一些缓冲区,我想计算栅格文件的每个值所占面积的百分比,以便估算所选区域的平均使用率(例如70%的农作物,30%的城市等)。

我知道在ArcGIS中有一个称为“ 制表区 ” 的Spatial Analyst函数,但是我在QGIS中找不到这样的功能。

如果有人可以帮助我,我将非常感激。


1
里卡多,欢迎来到我们的网站!我想知道您是否打算第二次编写“ QGIS”而不是“ ArcGIS”,以便您的评论应显示为:“我知道在ArcGIS中有一个功能……但是我在ArcGIS中找不到这样的功能QGIS。”
ub

我继续编辑问题文本。如果我对您的问题有误解,请还原。
underdark

@underdark谢谢老兄,是的,我想这是一个错误的类型。
Riccardo '04

@whuber感谢您报告错误,但是我仍然没有解决我的问题=)它很奇怪,因为它是一项非常简单的任务,我对此很有信心。
Riccardo 2012年

Answers:


1

尝试使用Sextante插件中的SAGA GIS的“交叉分类和制表”。

希望有帮助


1
除非您使用的是自编译版本,否则您必须首先通过插件管理器(获取python插件)进行安装-它是在1.8.0之后添加到核心的。
lynxlynxlynx 2012年

0

我已经为QGIS编写了一个名为LecoS的插件(在Plugin Downloader中查看,实验性插件,首先安装Scipy!)。它可以实现您想要的(给定栅格的土地覆盖率),但是直到现在我还没有找到用python编写多边形叠加层的时间,因此您必须事先按缓冲区和矢量要素分别修剪栅格。在这里查看用例。


0

对于这种情况,您可以使用如上所述的交叉分类和制表。要使用它,首先需要具有带有int值的栅格图层。根据使用层的不同,您需要执行一些重分类或重新编码才能准备好栅格。 在此处输入图片说明

另一个前提是您的多边形(缓冲区)必须具有一些int值。如果不是,则必须创建它(使用计算器公式$ id + 1)。 在此处输入图片说明

使用int代码作为栅格值栅格化矢量层。在这里,您必须设置一些条件:使用与要提取信息的栅格相同的像素值和相同的扩展名。 在此处输入图片说明

现在,使用SAGA工具中的交叉分类和制表。您必须考虑到这将创建一个xy表,其中将每个使用类别的像素数计入每个多边形。在这里,您必须插入“最大类数”,这意味着,例如,如果您有一个包含10个类别和25个多边形类的栅格,则最大数将为25。 在此处输入图片说明

这是最终结果:一个表格,您可以在其中获得每个多边形中每个类别的像素数。如果需要将其转换为面积,只需将像元数乘以栅格分辨率即可。 在此处输入图片说明


-2

“制表区域”工具位于ArcGIS 10的“分区”工具部分的“空间分析”工具箱中。不确定正在运行的版本。请注意,您必须具有Spatial Analyst扩展的单独许可证才能使用这些工具。听起来,该工具可以满足您的需求。

希望这可以帮助


感谢您的回答,我知道工具在arcgis中的位置,我想您这样回答是因为我在输入问题时出错。我正在QGIS中寻找类似的工具。
Riccardo '04
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.