5 分钟上手 / Getting Started

本页带你从零开始:下载一个国家的数据包 → 用 Python 读出某一年的边界 → 做几个最常用的筛选。
全程只需要 geopandas 与 pandas,无需注册、无需 API Key。

0. 环境准备

bash
pip install geopandas pandas pyarrow

1. 下载一个国家包

进入 数据下载页,按洲筛选或直接搜索国家名(如"巴西"或 BRA),点击下载 zip。

解压后的目录结构:

text
BRA/
├─ BRA_adm0_timeseries.parquet   # 国家面,逐年
├─ BRA_adm1_timeseries.parquet   # 州级,逐年
├─ BRA_adm2_timeseries.parquet   # 市级,逐年(18 个年份,2000–2025)
└─ BRA_events.csv                # 变更事件(3,876 条)

只想要"全世界同一年"的快照?改下 全球锚点年包(2000 / 2010 / 2020 / 2025 × ADM0/1/2,共 12 个文件)。

2. 三行代码读出某一年的边界

python
import geopandas as gpd

bra = gpd.read_parquet("BRA/BRA_adm2_timeseries.parquet")
bra_2010 = bra[bra.snapshot_year == 2010]      # 2010 年的 5,567 个市级边界
bra_2010.plot()                                 # 画出来看看

3. 常用筛选示例

3.1 只要"真实官方几何"

数据集中约 9% 的要素来自 GADM 锚点替代或回填,严格分析时应剔除:

python
real = bra[bra.geom_origin == "official_actual"]

全球尺度同理:

python
world = gpd.read_parquet("global/2025/gtamap_adm2_2025.geoparquet")
real = world[world.geom_origin == "official_actual"]   # 98.3% 的 ADM2 保留

3.2 只要高置信度子集

python
strict = world[world.conf_grade.isin(["A", "B"])]

等级含义:A = 官方直采,B = 官方经聚合器/GADM 回退,C = OSM 等社区源,D = 派生推断。详见 data-format 与 methods。

3.3 追踪某个单元的沿革

python
# 找出 2010 年叫 "Acre" 的州,再看它 20 年的面积变化
u = bra[(bra.level == "ADM1") & (bra.name == "Acre")]
hist = bra[bra.unit_id.isin(u.unit_id)][["snapshot_year", "name", "area_km2"]]
print(hist.sort_values("snapshot_year"))

3.4 列出某国的变更事件

python
import pandas as pd

ev = pd.read_csv("BRA/BRA_events.csv")         # 3,876 条
print(ev[ev.event_type != "boundary_adjustment"].head())
# 列:event_id / event_type / effective_date / date_precision / date_basis /
#     detail / source / legal_reference / confidence / from_snapshot / to_snapshot

3.5 中国的省—地—县三级(2000–2026)

python
chn = gpd.read_parquet("CHN/CHN_adm3_timeseries.parquet")   # 县级为 ADM3
chn_2000 = chn[chn.snapshot_year == 2000]      # 2000 年的 2,871 个县级单元

中国包来自 CTAmap v2.1,覆盖 2000–2026 共 27 个年份,是全国少有的逐年县级序列。

4. 下一步

5 分钟上手

import geopandas as gpd
gdf = gpd.read_parquet("AFG_adm1_timeseries.parquet")
print(gdf[["unit_id", "snapshot_year", "name"]].head())

SHP · GPKG · SVG · GeoJSON · 数据下载