GIS数据GIS DATA

广州2,631个村界装进一张图:geojson整包下载

技术专栏 · 数据产品 · 2026-10-11

广州市的村级边界,一个 8.7MB 的包就能全部装下:2,631 个村级面、11 个区,页内下单付款即得。广州这份数据有两个别处没有的看点——一是村改居改得彻底,包里大量单元的名字叫「社区」;二是它的区县归属要靠 12 位村级码自己算。两个坑本文都铺好路,照做就能用。

先说口径:广州的「村」,一半以上叫社区

广州是全国村改居最彻底的城市之一。原来的行政村连人带地改成居委会后,名字从「东心村」变成「三元坊社区」「五羊南社区」,但村级单元的边界和 12 位代码延续了下来。本包 2,631 个村级单元在类型字段里统一登记为「行政村」,村名字段里则村与社区混排——这是同一级单元的两种形态,做村居尺度分析(城中村研究、租赁网点、十五分钟生活圈)时应当一视同仁。

抽样看几个真实单元:南沙区的鱼窝头社区(村级码 440115104002)、东心村(440115104213)——注意这两个名字不同的单元前 6 位都是 440115,也就是南沙区。这就是广州包使用方法的核心:一切归属,从村级码来。

全市图景:11 个区的 2,631 个村级单元

广州市村界预览图:2631 个村级单元按 11 区填色
广州市村界全域预览(WGS84 · 2026-09 批次),图例数字为各区村级单元数。

按村级码前 6 位归组后,2,631 个单元在 11 个区的分布如下,无一落空:

区区划代码村级单元区区划代码村级单元
白云区440111362花都区440114228
增城区440118325荔湾区440103198
越秀区440104270天河区440106189
从化区440117270南沙区440115164
海珠区440105259黄埔区440112112
番禺区440113254合计 2,631

白云区的城中村体量撑起了 362 个单元的第一名;增城、从化两个郊区贡献了 595 个;越秀作为最老的城区还有 270 个——几乎全是改居社区的形态。南北跨度大是广州地图的第一印象:从化的山地村居到南沙的沙田水乡,东西不过 110 公里、南北接近 155 公里。

购买入口:已预选广州市

下面的入口与「村界数据 · 按市」页同一购物通道,已替你选中广州市,也可以改选其他地市:

¥29.99/ 市 · 买断制

已为你选中广州市,支付后即时获得下载链接。

正在加载地市清单…

付款后页面直接给出 广州市_村界_WGS84.geojson.gz 的下载地址,链接长期有效。坐标 WGS84(EPSG:4326),全市范围在东经 112.953° 至 114.055°、北纬 22.552° 至 23.936° 之间,与天地图等国际底图零偏移叠加。

按区分组:一段脚本 + 一张映射表

广州包的属性字段里,市、区县、乡镇的名称栏是空的——广东省的数据统一如此,归属信息全部压在 12 位村级码里。这不影响使用:前 6 位就是区划代码,配一张 11 区的映射表就能分区。这段脚本真实跑过,输出就是上表的数字:

import { createGunzip } from 'node:zlib';
import { createReadStream } from 'node:fs';
import * as readline from 'node:readline';

const CODE = {
  440103: '荔湾区', 440104: '越秀区', 440105: '海珠区', 440106: '天河区',
  440111: '白云区', 440112: '黄埔区', 440113: '番禺区', 440114: '花都区',
  440115: '南沙区', 440117: '从化区', 440118: '增城区',
};
const rl = readline.createInterface({
  input: createReadStream('广州市_村界_WGS84.geojson.gz').pipe(createGunzip()),
});
const byDistrict = new Map();
for await (const line of rl) {
  if (!line.includes('"Feature"')) continue;
  const m = line.match(/"村级码":\s*"(\d{12})"/);
  if (!m) continue;
  const d = CODE[m[1].slice(0, 6)];
  byDistrict.set(d, (byDistrict.get(d) || 0) + 1);
}
console.log(byDistrict);

在 QGIS 里操作等价且更直观:新建「区县」虚拟字段,用表达式 substr(村级码, 1, 6) 配映射即可批量打标签,之后按区筛选、按区配色都顺理成章。拿到数据先做一遍完整性检查的习惯,推荐配合《边界数据拓扑检查:一段脚本查出缝隙与重叠》一起用。

城中村、广佛联动与更小粒度

广州这份数据最对口的场景是城中村研究:白云、番禺、天河的城中村原型就是这批村级单元,完整的面边界加 12 位村级码,能直接承接人口、租赁与改造项目台账做空间化。研究范围越过大坦沙、金沙洲伸到佛山时,佛山以及广东其余 20 个地市都在按市列表里,同批次同口径,拼图不用校坐标;更大范围直接取广东省包。只需要天河或番禺一个区的,按区县村界页单独取,下单前可见该区实际村级单元数。

奥维导入的路径不变:QGIS 里按区筛选后另存 KML,经奥维收藏管理导入,WGS84 无偏移直接对底图。格式取舍见《GeoJSON 与 Shapefile 怎么选:结构、编码与场景对照》,同系列城市的用法见《下载成都市村界geojson:20区县一个包全拿》与《重庆市村界数据下载:38区县整包拿走》。

常见问题

广州市村界数据在哪里下载?
本文页内的购买入口已预选广州市,支付宝付款后立即出现下载链接;同款商品也挂在站内「村界数据 · 按市」页。文件为 gz 压缩 GeoJSON,约 8.7MB,下载后解压即用,链接可重复使用。
数据里大量「社区」也算村界吗?
算,这正是广州的口径特点。广州经历了大规模村改居,原来的行政村很多改成了社区,但村级单元的边界与代码延续下来。本包 2,631 个村级单元统一挂在「行政村」类型下,村名字段既有东心村这样的传统村,也有五羊南社区这样的改居社区,做村居尺度的分析应当把它们视为同一级单元。
属性里没有区县名,怎么按 11 个区分组?
用 12 位村级码的前 6 位:440103 荔湾、440104 越秀、440105 海珠、440106 天河、440111 白云、440112 黄埔、440113 番禺、440114 花都、440115 南沙、440117 从化、440118 增城。按这 11 个前缀给面要素打区名标签即可完成分区,本文给出了可直接运行的分组脚本,2,631 个面全部能对上区,无一落空。
广州的城中村研究用这份数据合适吗?
合适。城中村的原型就是这批村级单元:白云、番禺、天河等区的城中村在数据里都有完整的面边界与 12 位村级码,可以直接承接人口、租赁、改造项目等台账数据做空间化。注意边界性质是村级管理边界,不等于某一栋或某一围的精细范围。
能导入奥维互动地图或转成 SHP 吗?
奥维不直接读 GeoJSON:在 QGIS 里把需要的范围另存为 KML,再经奥维收藏管理导入,数据为 WGS84 无偏移坐标,与卫星影像直接对齐。需要 SHP 时在 QGIS 或 ArcGIS 中另存导出,保持 UTF-8 编码避免中文乱码。
只要广州某一个区的村界怎么办?
到按区县村界页单独买目标区,下单前选择器里能看到该区实际的村级单元数;整市包里也可以按村级码前 6 位自行筛出单区。广东全省包与其余 20 个地市都在按市、按省两个入口里,佛山、东莞等相邻城市可按同样的方式取数做广佛、深莞联动分析。

另外,如果你需要的是广州市的可编辑矢量 PPT 模板,请到:广州市可编辑地图PPT模板。