ch-0008 Chapter 7: Map Your Data
- 原书章节: Chapter 7 Map Your Data(pp. 179–236)
- 输入来源: 本地 pdf(HandsOnDataViz.pdf)
摘要
数据带空间维度时,地图能发展出更强的"地方感"。本章先讲地图设计原则,再分别用 Google My Maps、Datawrapper、Tableau Public 与 Socrata 平台做四种典型地图。
设计原则:区分点(point)与多边形(polygon)两类数据;choropleth(分区设色图)的 关键是把归一化后的数据按合理的颜色间隔(class intervals)映射到区域;配色要照顾 色盲读者;地图的底图(basemap)与上层数据层要协调。
工具与地图类型:
- Google My Maps:point map(点图,自定义图标/颜色),免费且易上手
- Datawrapper:symbol point map(符号点图,用大小编码数值)、choropleth(分区设色, 内置分级与配色建议)
- Tableau Public:choropleth(可多级联动筛选)
- Socrata Open Data:current map——直接从开放数据 API 拉取实时数据、持续更新的地图
类型速查(Table 7.1):point map、symbol point map、choropleth、heat point map (热力点图)、story map(故事地图,见 ch-0013)、polyline map(路线)、customized point-polyline-polygon(自定义组合)、searchable point map(可搜索点图)。
要点归纳
- 地图选型同样看"数据格式 + 故事":点的位置 vs 区域数值 vs 路线 vs 密度
- choropleth 三要点:数据必须归一化(如按人口/面积)、颜色间隔要诚实、选对配色 (考虑色盲友好)
- 点图适合"具体位置"(如医院),choropleth 适合"区域相对值"(如各州出生率)
- 用平台内置工具快速出图;更高级/更定制的地图等 ch-0012 的 Leaflet 代码模板
- current map 的"实时更新"理念:地图数据直接挂在开放 API 上(ch-0013 的 Leaflet Maps with Open Data APIs 模板延续此思路)
术语 / 概念
- point map(点图) — 用标记点表示具体位置
- symbol point map(符号点图) — 点的大小/颜色编码数值
- choropleth map(分区设色图) — 用彩色多边形表示区域数值
- heat point map(热力点图) — 用色带表示点密度/热度
- polyline map(折线图地图) — 表示路线(步道、通勤等)
- story map(故事地图) — 引导读者逐点游览、配滚动叙述的地图(ch-0013)
- basemap(底图) — 地图底层的瓦片图层(raster/vector)
- class intervals(分级间隔) — 把连续数值切成颜色区间的方式(ch-0001 提过)
原句摘录
...seeing the relative distance between points on a map, or identifying geographic patterns in a choropleth map (where colored polygons represent data values), relays information to readers' eyes more effectively than text, tables, or charts.
...remember that well-designed choropleth maps required normalized data and careful thought about color intervals.
疑问 / 待查
- choropleth 的分级方法(等距/分位数等)本章浅尝,ch-0015 会从"说谎"角度再讲
- 色盲友好配色(如 ColorBrewer)值得单列参考(见 notes.md)
Backlinks (1)
flowchart LR
n0["ch-0001 Introduction(为什么做数据可视化)"]
n1["ch-0002 选工具讲你的数据故事(Ch 1)"]
n2["ch-0003 强化电子表格技能(Ch 2)"]
n3["ch-0004 找到并质询你的数据(Ch 3)"]
n4["ch-0005 清洗脏数据(Ch 4)"]
n5["ch-0006 做有意义的比较(Ch 5)"]
n6["ch-0007 图表化你的数据(Ch 6)"]
n7["ch-0008 地图化你的数据(Ch 7)"]
n8["ch-0009 表格化你的数据(Ch 8)"]
n9["ch-0010 嵌入网页(Ch 9)"]
n10["ch-0011 用 GitHub 编辑与托管代码(Ch 10)"]
n11["ch-0012 Chart.js 与 Highcharts 模板(Ch 11)"]
n12["ch-0013 Leaflet 地图模板(Ch 12)"]
n13["ch-0014 转换你的地图数据(Ch 13)"]
n14["ch-0015 识别谎言、减少偏差(Ch 14)"]
n15["ch-0016 讲述并展示你的数据故事(Ch 15)"]
n16["ch-0017 附录 A 排查常见问题"]
n17["Hands-On Data Visualization(整理完成)"]
n18["Hands-On Data Visualization 笔记"]
n19["Reading"]
n17 --> n0
n17 --> n1
n17 --> n2
n17 --> n3
n17 --> n4
n17 --> n5
n17 --> n6
n17 --> n7
n17 --> n8
n17 --> n9
n17 --> n10
n17 --> n11
n17 --> n12
n17 --> n13
n17 --> n14
n17 --> n15
n17 --> n16
n17 --> n18
n19 --> n17
click n0 "../ch-0001/" "ch-0001 Introduction(为什么做数据可视化)"
click n1 "../ch-0002/" "ch-0002 选工具讲你的数据故事(Ch 1)"
click n2 "../ch-0003/" "ch-0003 强化电子表格技能(Ch 2)"
click n3 "../ch-0004/" "ch-0004 找到并质询你的数据(Ch 3)"
click n4 "../ch-0005/" "ch-0005 清洗脏数据(Ch 4)"
click n5 "../ch-0006/" "ch-0006 做有意义的比较(Ch 5)"
click n6 "../ch-0007/" "ch-0007 图表化你的数据(Ch 6)"
click n7 "./" "ch-0008 地图化你的数据(Ch 7)"
click n8 "../ch-0009/" "ch-0009 表格化你的数据(Ch 8)"
click n9 "../ch-0010/" "ch-0010 嵌入网页(Ch 9)"
click n10 "../ch-0011/" "ch-0011 用 GitHub 编辑与托管代码(Ch 10)"
click n11 "../ch-0012/" "ch-0012 Chart.js 与 Highcharts 模板(Ch 11)"
click n12 "../ch-0013/" "ch-0013 Leaflet 地图模板(Ch 12)"
click n13 "../ch-0014/" "ch-0014 转换你的地图数据(Ch 13)"
click n14 "../ch-0015/" "ch-0015 识别谎言、减少偏差(Ch 14)"
click n15 "../ch-0016/" "ch-0016 讲述并展示你的数据故事(Ch 15)"
click n16 "../ch-0017/" "ch-0017 附录 A 排查常见问题"
click n17 "../" "Hands-On Data Visualization(整理完成)"
click n18 "../notes/" "Hands-On Data Visualization 笔记"
click n19 "../../" "Reading"