Geodetector软件下载、地理探测器的应用实践与结果解读

  本文介绍Geodetector软件的下载方法,以及地理探测器分析的完整操作,并对其结果加以解读。

  首先,我们介绍Geodetector软件的下载方法。进入软件官网(http://www.geodetector.cn/),可以看到其中的第四个部分为软件下载区域。对于大多数用户而言,我们后期直接在Excel中运行地理探测器即可(此时Geodetector软件就相当于是Excel表格文件中的一个);因此,我们就选择5个下载链接中前三个的任意一个即可。在这里我就选择第一个链接进行下载,如下图所示。如果大家需要基于R语言实现地理探测器操作,可以参考R语言geodetector包基于栅格图像实现地理探测器操作(https://blog.csdn.net/zhebushibiaoshifu/article/details/128484786)与R语言GD包基于栅格图像实现地理探测器与连续参数的自动离散化(https://blog.csdn.net/zhebushibiaoshifu/article/details/128538199)等两篇文章。

在这里插入图片描述

  下载完成后,解压缩下载好的文件,如下图所示。可以看到,其中有一个.xlsm格式的表格文件。

在这里插入图片描述

  我们将上述表格文件打开。这里需要注意,如果大家打开后显示如下图所示的“启用编辑”提示,就需要点一下,开启编辑。

在这里插入图片描述

  接下来,在新的提示中,选择“启用内容”。

在这里插入图片描述

  随后,就会弹出如下所示的宏窗口,名称为“GeoDetector”;这个也就是我们GeoDetector软件的交互页面了。

在这里插入图片描述

  随后,我们找到存储有自己数据的Excel,将我们自己的因变量、自变量数据复制到我们刚刚打开的.xlsm格式表格文件中。例如,下图就是我存储自己数据的表格,其中第三列Dif为因变量,最后两列NDVI2020_Soil_则为自变量。

在这里插入图片描述

  这里有一点需要注意,在进行地理探测器操作时,我们的自变量(上图中最后两列)必须是类别数据(比如土壤类型数据、土地利用类型数据),不能是连续数据(比如人口数据、GDP数据);如果大家的自变量中有连续数据的话,一定要先转换成类别数据,再进行地理探测器分析。转换的方式有很多,比如假设你的连续数据是栅格格式的,那就可以用ArcGIS中的重分类工具,对原有的连续数据栅格进行转换。

在这里插入图片描述

  上图即为我将自己的数据复制完毕的样子。在还有一点需要注意:将我们自己的数据复制、粘贴到.xlsm格式表格文件中时,在复制时不要用点击列编号(就是Excel中显示ABC的那里)的方式选中列,而是需要先选中第一行,然后向下拖动,直到需要复制的内容选中完毕,再粘贴到.xlsm格式表格文件中。否则,可能会导致Geodetector软件运行报错,出现“下标越界”的提示。

  复制数据后,在Geodetector软件窗口选择“Read Data”。

在这里插入图片描述

  随后,我们复制的数据的列名称就将出现到软件窗口中。

在这里插入图片描述

  随后,依据实际情况,将我们复制好的数据进行因变量、自变量的划分;划分完毕后,点击“Run”即可开始地理探测器的运行。

在这里插入图片描述

  稍等片刻,即可得到结果。得到结果后,在表格文件中会生成4个新的Sheet,如下图所示。

在这里插入图片描述

  我们就对这些新生成的Sheet加以逐个介绍。首先是“Factor_detector”,其意为分异及因子探测,表明每一个自变量在多大程度上解释了因变量的空间分异;用q值度量,最小为0,最大为1,越大说明该自变量对因变量的空间分异解释程度越大。

在这里插入图片描述

  接下来是“Interaction_detector”,其意为交互作用探测,评估每两个自变量共同作用时,是否会增加或减弱对因变量的解释能力。这里一共会有5个结果,从左到右分别为非线性减弱单因子非线性减弱双因子增强独立非线性增强。如下图,我得到的结果(紫色部分)位于第3个,也就是双因子增强

在这里插入图片描述

  接下来是“Risk_detector”,其意为风险区探测,用于判断每两个子区域(也就是每一个自变量所分的每一种类别)之间属性值是否有显著差别。

在这里插入图片描述

  最后一个是“Ecological_detector”,其意为生态探测,比较每两个自变量对因变量的空间分布的影响是否有显著的差异。

在这里插入图片描述

  以上四个指标,便是地理探测器所得到的不同分析结果。我这里只是简单罗列了一下各指标的含义,大家如果需要详细了解的话,建议查阅一下《地理探测器:原理与展望》这篇论文。论文的作者也就是Geodetector软件的作者,因此这一篇论文的内容对于地理探测器原理、结果解释等的理解会很有帮助。

欢迎关注:疯狂学习GIS

  • 43
    点赞
  • 351
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 54
    评论
detector是探测器,它把探测任务交给具体的探测实现类的实例完成。 cpDetector内置了一些常用的探测实现类,这些探测实现类的实例可以通过add方法 加进来,如ParsingDetector、 JChardetFacade、ASCIIDetector、UnicodeDetector。 detector按照“谁最先返回非空的探测结果,就以该结果为准”的原则返回探测到的 字符集编码。 cpdetector.io.CodepageDetectorProxy detector = cpdetector.io.CodepageDetectorProxy.getInstance(); /*------------------------------------------------------------------------- ParsingDetector可用于检查HTML、XML等文件或字符流的编码,构造方法中的参数用于 指示是否显示探测过程的详细信息,为false不显示。 ---------------------------------------------------------------------------*/ detector.add(new cpdetector.io.ParsingDetector(false)); /*-------------------------------------------------------------------------- JChardetFacade封装了由Mozilla组织提供的JChardet,它可以完成大多数文件的编码 测定。所以,一般有了这个探测器就可满足大多数项目的要求,如果你还不放心,可以 再多加几个探测器,比如下面的ASCIIDetector、UnicodeDetector等。 ---------------------------------------------------------------------------*/ detector.add(cpdetector.io.JChardetFacade.getInstance()); //ASCIIDetector用于ASCII编码测定 detector.add(cpdetector.io.ASCIIDetector.getInstance()); //UnicodeDetector用于Unicode家族编码的测定 detector.add(cpdetector.io.UnicodeDetector.getInstance()); JAVA.nio.charset.Charset charset = null; File f=new File("待测的文本文件名"); try { charset = detector.detectCodepage(f.toURL()); } catch (Exception ex) {ex.printStackTrace();} if(charset!=null){ System.out.println(f.getName()+"编码是:"+charset.name()); }else System.out.println(f.getName()+"未知"); 上面代码中的detector不仅可以用于探测文件的编码,也可以探测任意输入的文本流的编码,方法是调用其重载形式: Java代码 charset=detector.detectCodepage(待测的文本输入流,测量该流所需的读入字节数);
你好!对于使用R语言完成地理探测器的问题,可以使用一些R包来处理地理数据和进行地理分析。以下是一些常用的R包和功能,可以帮助你完成地理探测器的开发: 1. `sf`包:用于处理和分析地理空间数据。它提供了一套功能强大的函数,用于读取、写入、转换和分析矢量数据。你可以使用这个包来处理地理信息系统(GIS)数据,并进行地理空间分析。 2. `leaflet`包:用于创建交互式地图可视化。你可以使用这个包来显示地理数据,添加标记点、线条和多边形,并与用户进行交互。 3. `sp`包:用于处理和分析矢量和栅格数据。它提供了一套函数和类,用于处理空间数据对象和进行空间分析。 4. `raster`包:用于处理和分析栅格数据。如果你的地理探测器需要处理栅格数据,比如遥感影像或高程数据,这个包会很有帮助。 5. `rgeos`包:用于进行地理空间操作。它提供了一组函数,可以执行空间操作,如缓冲区分析、相交计算、点在多边形内判断等。 6. `rgdal`包:用于与GDAL库进行交互,可以读取和写入不同格式的地理数据。如果你需要处理不同格式的地理数据,比如Shapefile、GeoJSON等,这个包会很有用。 通过使用这些R包,你可以读取、处理和分析地理数据,并将结果可视化展示在地图上。希望这些信息对你有所帮助!如果你有任何其他问题,请随时提问。
评论 54
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

疯狂学习GIS

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值