空间共位分析
空间共位分析
一句话答案:空间共位分析回答"两类(或多类)地理要素之间,是不是真的存在显著的空间关联"。入口在「地理分析工具箱」→「空间共位分析」,导入一份带分类字段的坐标数据,选一个分析模式,几分钟出结果。
"便利店旁边总有奶茶店,药店附近总有诊所",这类印象很常见。但"感觉总是在一起"不等于"统计上真的在一起":也许只是商业区本身店多,什么类型都多,并不是这两类之间有特殊的吸引力。空间共位分析用统计检验把这件事说清楚。
这篇是快速上手版。想搞懂每个参数背后的原理、每条结果怎么解读,看 原理与参数详解:LCLQ 的计算公式、P 值的含义、核函数的区别、模式挖掘的算法逻辑都在那篇里。
四种模式,选一个就好
打开空间共位分析后,第二步「参数设置」页面顶部有一个「分析模式」下拉框。四种模式对应四类问题:
| 模式 | 适合回答的问题 | 结果形态 |
|---|---|---|
| 局部 LCLQ 分析 | 已知要看哪两类(便利店 vs 奶茶店),想知道"具体哪些便利店旁边奶茶店特别多" | 精确到每个点的指标 + 四色地图 |
| 全局 CLQ 矩阵 | 数据有好几类要素,想一次看所有类别对之间的关联强度 | N×N 热力图矩阵 |
| 共位模式挖掘 | 不预先指定 A 和 B,让算法自动发现"哪些类别总是出现在一起" | 频繁模式列表 + 网络图 |
| Cross-K 多尺度分析 | 想知道两类要素在什么距离范围内关联最强(500 米还是 2 公里) | 距离曲线图 + 峰值距离 |
不用一次全学会。不知道选哪个就先用「局部 LCLQ 分析」:最经典、结果最直观,大多数人第一次用选它就对了。共位模式挖掘适合 POI 类别有十几二十种的情况,系统会自动逐对计算,省去人工逐对试的工作量。
准备一份带分类字段的坐标数据
- 一份带坐标的数据文件(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:曲线图显示出来,峰值距离也给了。
到这一步,你已经用统计方法回答了一个空间问题:这两类要素之间有没有关系、关系有多强、在什么尺度上最强。
下一步:
