空间共位分析

地图帮2026-03-20

空间共位分析

奶茶店是不是总开在便利店旁边?

你有没有注意过,有些店总是"扎堆"出现在同一片区域 —— 便利店旁边总有奶茶店,药店附近总有诊所。

但"感觉总是在一起"不等于"统计上真的在一起"。也许只是商业区本身店多,什么类型都多,并不是这两类之间有特殊的吸引力。

空间共位分析就是帮你回答这个问题:两类(或多类)地理要素之间,是不是真的存在显著的空间关联?

地图帮提供了四种分析模式,从精细的两两分析到自动的多类别模式发现,覆盖不同深度的需求。你不用一次全学会 —— 先挑和你手头任务最匹配的那个模式试一次就行。

💡 这篇是快速上手版。如果你想搞懂每个参数背后的原理、每条结果到底怎么解读,去看 原理与参数详解 —— 那篇把 LCLQ 的计算公式、P 值的含义、核函数的区别、模式挖掘的算法逻辑全讲透了。


四种模式,选一个就好

打开空间共位分析后,第二步「参数设置」页面顶部有一个「分析模式」下拉框。先别急着选,看看哪个最对你的口味:

局部 LCLQ 分析 —— 你已经知道要看哪两类(比如便利店 vs 奶茶店),想知道"具体哪些便利店旁边奶茶店特别多"。结果精确到每个点,还能在地图上用四种颜色标出来。大多数人第一次用,选这个就对了。

全局 CLQ 矩阵 —— 你的数据有好几类要素(便利店、奶茶店、药店、餐厅……),想一次性看所有类别对之间的关联强度。结果是一张 N×N 的热力图矩阵,哪对关联最强、哪对互相排斥,一目了然。

共位模式挖掘 —— 你不想预先指定 A 和 B,想让算法自动发现"哪些类别总是出现在一起"。特别适合 POI 数据有十几二十种类别的情况 —— 人工逐对试太累了,让机器来。

Cross-K 多尺度分析 —— 你想知道两类要素在什么距离范围内关联最强。是 500 米以内?还是 2 公里?结果是一条曲线图,峰值对应的距离就是共位最显著的尺度。

不知道选哪个?先用「局部 LCLQ 分析」,它最经典、结果最直观。


你需要准备什么

  • 一份带坐标的数据文件(Excel、CSV、Shapefile 或 GeoJSON)
  • 数据里有一个分类字段,用来区分不同类型的要素(比如"类型"列里写着便利店、奶茶店、药店)
  • 数据量建议 50 条以上,太少的话统计检验不稳定

跟着走

第一步:导入数据

把你的文件拖进导入区域,或者点击导入按钮选择文件。支持 Shapefile、GeoJSON、Excel 和 CSV。

如果你用的是 Excel 或 CSV,导入后需要告诉系统哪一列是经度、哪一列是纬度 —— 页面上会有对应的下拉框,选一下就好。

💡 只是想先试试?页面下方有一个蓝色的「加载空间共位分析专用示例」链接 —— 点一下会自动填入长沙 30 个商铺的数据(便利店、奶茶店、药店),直接往下走。

到这里,你应该能看到数据预览表格,字段和行数都显示出来了。


第二步:选模式、设参数

点「下一步」进入参数页。

先在顶部选好分析模式(刚才介绍的四种之一),下方的参数卡片会自动切换成对应的选项 —— 不需要的参数会自动隐藏,不用管。

然后设置这几个关键参数:

分类字段 —— 选择你数据里区分类型的那一列。选完之后,下方的类别下拉框会自动列出这一列里的所有值。

目标类别 —— 在「局部 LCLQ」和「Cross-K」模式下,你需要指定兴趣类别 A 和邻居类别 B(比如 A=便利店,B=奶茶店)。在「全局 CLQ 矩阵」和「共位模式挖掘」模式下,系统会自动分析所有类别,不用选。

邻域类型 —— 两种选法:

  • KNN(K 近邻):看每个点最近的 K 个邻居。K 值推荐 5~15,默认 8,大多数情况不用改
  • 距离带:看每个点周围固定半径内的所有邻居。适合数据密度不均匀的情况,半径单位是米

核函数 —— 决定近邻的权重怎么算。离得近的邻居权重大、远的小(高斯核),还是超过一定距离直接不算(Bisquare 核),还是所有邻居权重一样(均匀核)。不确定就用默认的高斯核。

置换检验次数 —— 做多少次随机打乱来检验显著性。99 次出结果快、499 次比较标准、999 次最精确但最慢。第一次跑建议先用 99,确认没问题再调高。

⚠️ 这里很多人会犯一个错:分类字段选成了"名称"或"地址"这种每行都不一样的列。分类字段应该是有重复值的列 —— 比如"类型"列里有很多行都写着"便利店"。如果每行都不同,算法会认为你有几百种类别,结果没有意义。

到这里,你应该能看到参数卡片上的各个选项都已经填好了,没有红色警告。


第三步:执行分析

点「下一步」进入执行页,再点「开始分析」按钮。

页面上会出现一个进度条和文字提示,告诉你当前跑到哪一步了。数据量不大的话(几百条以内),通常几秒到几十秒就能出结果。

分析完成后,下方会弹出一张结果卡片,内容取决于你选的模式:


四种模式的结果怎么看

局部 LCLQ 分析

结果卡片会显示几个关键数字:

  • 全局 CLQ —— 整体上 A 和 B 是否共位。大于 1 说明全局层面存在正向关联
  • 平均 LCLQ —— 所有 A 类点的局部共位商均值
  • 显著共位点数 —— 有多少个 A 类点附近 B 类显著偏多(LCLQ > 1 且 P < 0.05)
  • 显著孤立点数 —— 有多少个 A 类点附近 B 类显著偏少

同时会生成一张地图,用四种颜色标注每个点:

  • 🔴 红色 = 显著共位(这里确实聚在一起)
  • 🟠 橙色 = 共位但不显著(看着像,但统计上不够确定)
  • 🔵 蓝色 = 显著孤立(这里明显缺少 B 类)
  • ⚪ 灰色 = 孤立但不显著

点击结果卡片上的「在浏览器中查看地图」链接,就能看到这张交互式地图。

结果数据可以通过「导出结果」按钮发送到标准导出页面,导出为 Excel。


全局 CLQ 矩阵

结果是一张 N×N 的热力图(N = 你数据中的类别数)。

每个格子的颜色代表从行类别到列类别的全局共位商。颜色越深,关联越强。显著的格子(P < 0.05)会特别标出来。

💡 看这张图最快的方法:先找最深色的那几个格子,它们就是关联最强的类别对。如果你的数据有五六种 POI 类型,这比逐对跑 LCLQ 快多了。

对角线是灰色的(自己和自己的关联没有意义)。矩阵不对称是正常的 —— A→B 的共位商和 B→A 可以不同。


共位模式挖掘

结果会列出所有被发现的频繁共位模式

  • 模式 —— 比如 {便利店, 奶茶店} 或 {便利店, 奶茶店, 药店}
  • 阶数 —— 模式包含几种类别(2 阶 = 两种类别的组合,3 阶 = 三种)
  • 参与指数 —— 衡量这个模式有多"普遍",越接近 1 越强
  • 实例数 —— 在数据中找到了多少组这样的共位实例

同时会生成一张网络图 —— 节点是类别,边是共位关系,边越粗表示参与指数越高。一眼就能看出哪几类总是扎堆出现。

⚠️ 如果挖掘结果显示 0 个模式,先别怀疑软件 —— 通常是最小参与率阈值设太高了。试着把它从 0.5 降到 0.3 或 0.2 再跑一次。


Cross-K 多尺度分析

结果是一张曲线图,横轴是距离(米),纵轴是 L 函数值。

  • 实线是观测值(你的真实数据)
  • 虚线是期望值(随机分布下的理论值)
  • 灰色带是置信包络(95% 置信区间)

怎么看:实线在灰色带上方,说明在这个距离上两类要素的聚集程度超出了随机预期 —— 也就是说,在这个距离尺度上存在显著的共位。

结果卡片还会直接告诉你峰值距离,也就是共位最强的那个距离。比如显示"峰值距离 800m",意思是便利店和奶茶店在 800 米范围内的共位关系最强。


几个容易踩的坑

⚠️ 数据量太少:低于 50 条时,置换检验不稳定,P 值参考价值不大。建议 100 条以上再做正式分析。

⚠️ K 值太大或太小:K 值大于数据总量的 1/3 就过大了,会把远处不相关的点也拉进来。K 值太小(比如 2、3)则噪声太大。5~15 是比较安全的范围。

⚠️ 距离带半径设太小:如果用距离带邻域,半径太小会导致很多点找不到邻居,结果全是"无定义"。可以先看一下系统推荐的带宽值作为参考。

💡 先跑示例数据:不确定参数怎么设的时候,先用内置的示例数据跑一遍,看看结果长什么样,心里有底了再换成自己的数据。


做完了,检查一下

如果你用的是「局部 LCLQ」,结果卡片上显示了全局 CLQ 值和显著点数,地图也能正常打开 —— 说明分析完成了。

如果你用的是「全局 CLQ 矩阵」,能看到一张彩色热力图,对角线是灰色 —— 没问题。

如果你用的是「共位模式挖掘」,列表里有模式和参与指数,网络图能打开 —— 完成了。

如果你用的是「Cross-K」,曲线图显示出来了,峰值距离也给了 —— 大功告成。

到这里,你不只是"跑了一次分析",而是真的用统计方法回答了一个空间问题:这两类要素之间到底有没有关系、关系有多强、在什么尺度上最强。

接下来可以做什么?如果你发现了显著的共位关系,可以用 缓冲区分析 进一步量化——看看每个 A 类点周围一定半径内到底有多少个 B 类点。或者去 聚类分析 把这些点按更多维度分个组,看看共位关系在不同群体里是不是不一样。

想深入理解每个指标到底是什么意思?去看 原理与参数详解 —— LCLQ 怎么算的、P 值到底说了什么、四种核函数怎么选、Cross-K 曲线怎么读,全部讲透了。

最后更新时间 3/21/2026, 1:45:47 PM