首页 > 其他分享 >ArcGIS如何自动获得随机采样点?

ArcGIS如何自动获得随机采样点?

时间:2023-05-17 15:45:32浏览次数:39  
标签:采样 要素 个数 生成 ArcGIS 随机 100 optional

  本文介绍基于ArcMap软件,实现在指定区域自动生成随机点的方法。

  在GIS应用中,我们时常需要在研究区域内进行地理数据的随机采样;而采样点的位置往往需要在结合实际情况的前提下,用计算机随机生成。这一操作在ArcMap软件中就可以非常方便地进行。

  已知现有如下一景栅格图像,我们需要在这一图像对应的位置中,随机生成若干点作为采样点。

  另一方面,我们还已知该栅格图像对应的空间范围的面要素矢量图层,如下图所示。其中,由于该栅格图像存在无效值NoData,因此可以看到栅格图像是没有完全遮盖矢量图层的。

  接下来,就可以开始随机点的选取。在软件中依次选择“Data Management Tools.tbx”→“Sampling”→“Creat Random Points”。

  弹出如下所示的界面。

  这个工具的参数有很多,我们逐一介绍。“Output Location”为生成点要素的保存路径,“Output Point Feature Class”为生成点要素的名称;“Constraining Feature Class (optional)”为我们生成随机点的范围——这一项为可选项,如果我们选择了这一项,那么随机点就会在这一项所选的点、线或面矢量要素范围内生成;如果我们不选择这一项,就可以在下一项“Constraining Extent (optional)”中选择我们的栅格图像作为范围。“Number of Points [value or field] (optional)”为生成点的个数,如果我们选中“Long”,那么就直接输入整数即可;如果我们选中“Field”,那么就依据“Constraining Feature Class (optional)”这一项所选的点、线或面矢量要素的属性表中某一个字段作为点的个数;这里还需要注意,如果我们在“Constraining Feature Class (optional)”这一项选中了包含多个要素的要素集,那么“Long”所输入的点的个数其实是该要素集下属每1个要素中所生成的点的个数(这里大家看不明白也没关系,我们在后面会用一些例子来说明)。“Minimum Allowed Distance [value or field] (optional)”表示所生成点之间的最小距离,同样是可以用直接输入距离或者用矢量要素的属性表字段来赋值。最后一个勾选项表示是否将输出的随机点结果作为一个整体的要素——如果不勾选此项,那么输出的随机点要素集中,每1个点就相当于是1个要素;如果勾选此项,那么输出的随机点要素集中,所有点整体相当于是1个要素;如果勾选了这一项,就将激活最后一个输入框,表示如果将多个点整体当作1个要素的话,该要素最多可以含有多少个点。

  接下来,我们就通过几个实例来探究一下上述参数的具体含义。

  首先,第一个例子,我们就按照上图所示的参数设定运行该工具,得到结果如下所示。

  可以看到,我们虽然在“Long”中设定了点的个数是100,但是实际生成的随机点个数远远不止100个;这是因为,前面我们也提到:如果在“Constraining Feature Class (optional)”这一项选中了包含多个要素的要素集,那么“Long”所输入的点的个数其实是该要素集下属每1个要素中所生成的点的个数。

  在刚刚的例子中,我们“Constraining Feature Class (optional)”这一项选所用的面矢量要素图层如下所示,可以看到其是一个包含有9个省(9个要素)的要素集;那么结合我们前面介绍的,在“Long”中设定了点的个数是100,实际上是在每1个省份(每1个要素)中生成100个点,因此最终得到的整体结果是900个点,从而导致我们的随机点结果看起来就这么密集。

  我们将这个9个省的面矢量要素图层和刚刚生成的随机点矢量要素放在一起看,大家就看得更清楚了——每个省都是100个点,但由于内蒙古地区面积大,因此这里100个点就看起来比较疏松;而宁夏(下图中红色区域)由于面积小,所以100个点在这里就显得尤为密集。

  接下来,第二个例子,我们按照下图所示的参数设定运行该工具。

  其中,我们选择用矢量图层的属性表字段来作为约束每1个行政区(每1个要素集)中生成随机点的个数。这里我们就选择用下图所示的这个字段作为输入字段。

  得到的结果如下所示。可以看到,内蒙古的该字段数值为15,其所生成的点就是15个;而宁夏该字段的数值为64,因此其所生成的点看起来依然是密密麻麻的。

  清楚了以上规则,就可以更好地进行随机点自动生成的操作了。

标签:采样,要素,个数,生成,ArcGIS,随机,100,optional
From: https://www.cnblogs.com/fkxxgis/p/17408951.html

相关文章

  • Metropolis Hastings采样和贝叶斯泊松回归Poisson模型|附代码数据
    全文下载链接:http://tecdat.cn/?p=23524最近我们被客户要求撰写关于采样的研究报告,包括一些图形和统计输出。在本文中,我想向你展示如何使用R的Metropolis采样从贝叶斯Poisson回归模型中采样。Metropolis-Hastings算法Metropolis-Hastings抽样算法是一类马尔科夫链蒙特卡洛(MCM......
  • 基于国产M0核MCU平台,全开源双电阻采样FOC高压 风机量产程序,包含龙博格电机观测器,SVPW
    基于国产M0核MCU平台,全开源双电阻采样FOC高压风机量产程序,包含龙博格电机观测器,SVPWM,顺逆风启动,五段式与七段式调制等源码,完全可以移植到别的MCU平台。适合电机算法研究ID:19200640946461576......
  • STM32F0系列FOC 源代码, 有单电阻采样和三电阻采样两种代码。 都是ST
    STM32F0系列FOC源代码,有单电阻采样和三电阻采样两种代码。都是ST很经典算法,代码学习,无感算法开源,代码不是库。学习代码规范和无感FOC算法。ID:74100634294302968......
  • 随机数生成方法
    【数学基础】详解Box-Muller方法生成正态分布机器学习初学者 2021-07-1311:16 以下文章来源于MyEncyclopedia ,作者MyEncyclopediaMyEncyclopedia.带您领略深度学习,强化学习,算法,数学,大数据等前沿科技的交叉魅力本公众号MyEncyclopedia定期发布AI,算法,工程,大数据交叉......
  • [转]基于Box–Muller变换的正态随机数生成方法
    为什么我的眼里常含泪水?因为我有一个算法不会。为了节约点眼泪,今天我们就来介绍著名的Box–Muller变换,基于这种变换,我们便可以得到一个从均匀分布中得到正态分布采样的算法,本文也会详细解释其中蕴含的数学原理。 Box–Muller变换最初由GeorgeE.P.Box与MervinE.Muller......
  • R语言中进行期权定价的Heston随机波动率模型|附代码数据
    原文链接:http://tecdat.cn/?p=12111最近我们被客户要求撰写关于Heston随机波动率的研究报告,包括一些图形和统计输出。在本文中,我将向您展示如何模拟股票价格的Heston随机波动率模型Heston模型是一种期权估值方法,它考虑到同一资产在给定时间交易的不同期权的波动性变化。它试图......
  • Python金融应用编程:衍生品定价和套期保值的随机过程|附代码数据
    全文链接:http://tecdat.cn/?p=5620最近我们被客户要求撰写关于金融应用编程的研究报告,包括一些图形和统计输出。在本文中随机过程对定量融资的许多方面都很有用,包括但不限于衍生品定价,风险管理和投资管理这些应用程序将在本文后面进一步详细讨论。本节介绍了量化融资中使用的一......
  • 离散型随机变量
    第87炼离散型随机变量分布列与数字特征一、基础知识:(一)离散型随机变量分布列:1、随机变量:对于一项随机试验,会有多个可能产生的试验结果,则通过确定一个对应关系,使得每一个试验结果与一个确定的数相对应,在这种对应关系下,数字随着每次试验结果的变化而变化,将这种变化用一个变量进行......
  • 粒子群算法PSO优化随机森林RFR的回归预测MATLAB代码 代码注释清楚,可以读取EXCEL数
    粒子群算法PSO优化随机森林RFR的回归预测MATLAB代码代码注释清楚,可以读取EXCEL数据,使用换自己数据集。很方便,初学者容易上手。YID:8945655042973482......
  • RFR随机森林回归预测MATLAB代码 代码注释清楚。 main为主程序,可以
    RFR随机森林回归预测MATLAB代码代码注释清楚。main为主程序,可以读取EXCEL数据。很方便,初学者容易上手。ID:1624655510470473......