目录
前言 1
第1 章 地理空间分析入门 . 11
1.1 数据普及12
1.2 提出数据问题 .15
1.3 空间数据科学的概念框架 18
1.3.1 地图投影 .20
1.3.2 矢量数据:用对象表示地点 .24
1.3.3 栅格数据:了解空间关系 25
1.4 数据集的选择和评估 27
1.5 总结 .28
第2 章 空间分析的基本设施 .31
2.1 探索QGIS 中的空间数据 .32
2.1.1 安装配置QGIS 32
2.1.2 将底图添加到QGIS 33
2.1.3 探索数据资源 36
2.2 可视化纽约市的环境投诉 37
2.2.1 上传数据到QGIS 37
2.2.2 设置项目CRS 41
2.2.3 使用查询构建器过滤数据 42
2.3 人口数据可视化 43
2.3.1 QGIS Python 控制台 .45
2.3.2 加载栅格层 48
2.3.3 红线区:反映不平等.49
2.4 小结 .53
第3 章 QGIS:探索用于空间分析的PyQGIS 和
原生算法 .55
3.1 探索QGIS 工作区:旧金山的绿化和不平等现象 56
3.1.1 Python 插件 57
3.1.2 访问数据 .60
3.1.3 使用图层面板 62
3.1.4 处理研究问题 65
3.2 WFS:识别马萨诸塞州的环境威胁 66
3.2.1 访问数据 .66
3.2.2 探索属性 .69
3.2.3 使用迭代器 71
3.2.4 图层样式 .74
3.3 在Python 控制台中使用处理算法 74
3.3.1 使用算法 .75
3.3.2 按表达式提取 77
3.3.3 缓冲区 78
3.3.4 按位置提取 79
3.4 总结 .81
第4 章 云上的地理空间分析:Google Earth Engine
以及其他工具 .83
4.1 配置Google Earth Engine .85
4.2 使用GEE 控制台和geemap 86
4.2.1 创建Conda 环境 .88
4.2.2 打开Jupyter Notebook .89
4.2.3 安装geemap 和其他包 .89
4.3 geemap 概览 92
4.3.1 图层和工具 93
4.3.2 底图 95
4.4 探索Landsat 9 影像集 96
4.5 使用光谱带 97
4.6 国土覆盖数据库底图 101
4.6.1 访问数据 102
4.6.2 建立自定义图例 104
4.7 Leafmap:Google Earth Engine 的代用品 .106
4.8 总结 109
第5 章 OpenStreetMap:使用OSMnx 访问
地理空间数据 111
5.1 OpenStreetMap 的概念模型 112
5.1.1 标签 . 112
5.1.2 多重图 114
5.2 安装OSMnx . 115
5.3 选择一个地点 116
5.4 了解变量和参数 .120
5.5 计算出行时间 122
5.6 OSMnx 中的基本统计度量指标 .125
5.6.1 迂回性 126
5.6.2 路网分析:法国巴黎的迂回性 127
5.6.3 中间向心性 .129
5.6.4 网络类型 131
5.7 定制地区地图 133
5.7.1 通过地点生成几何图像 .133
5.7.2 通过地址生成几何图像 .134
5.8 在QGIS 中使用QuickOSM .141
5.9 总结 141
第6 章 ArcGIS 的Python API 143
6.1 安装配置.143
6.1.1 ArcGIS Python API 中的可用模块 143
6.1.2 安装ArcGIS Pro144
6.1.3 环境设置 145
6.1.4 安装依赖 146
6.2 连接到ArcGIS Python API 147
6.2.1 以匿名用户身份连接到ArcGIS Online .147
6.2.2 使用证书连接到ArcGIS 用户账户 .147
6.3 探索图像层:城市热岛图 .148
6.4 栅格函数.153
6.5 探索图像属性 158
6.5.1 图像提升 163
6.5.2 比较位置的不同时间点数据 164
6.5.3 过滤图层 166
6.6 总结 172
第7 章 GeoPandas 和空间统计 173
7.1 安装GeoPandas 173
7.2 使用GeoJSON 文件 .174
7.3 创建GeoDataFrame 176
7.4 使用美国人口普查数据:洛杉矶(LA)人口密度地图 182
7.4.1 通过人口普查API 和FTP 访问区域和人口数据 .183
7.4.2 在浏览器中通过人口普查API 访问数据 .187
7.4.3 使用数据配置文件 190
7.4.4 创建地图 191
7.5 总结 195
第8 章 数据清洗 . 197
8.1 检查缺失数据 197
8.1.1 上传到Colab 198
8.1.2 空值和非空值 .201
8.1.3 数据类型 202
8.1.4 元数据 202
8.1.5 汇总统计 204
8.1.6 替换缺失值 .209
8.2 使用Missingno 可视化数据 .209
8.3 映射模式.213
8.3.1 纬度和经度 .213
8.3.2 shapefile 214
8.4 总结 217
第9 章 探索地理空间数据抽象库(GDAL) 219
9.1 安装配置GDAL .220
9.1.1 安装Spider 220
9.1.2 安装GDAL .221
9.2 在命令行中使用GDAL 221
9.3 使用GDAL 编辑数据 223
9.3.1 Warp 函数 .225
9.3.2 获取输入光栅波段 225
9.4 在Python 中使用GDAL 库 227
9.4.1 初识Spyder .227
9.4.2 在Spyder 中浏览数据 229
9.4.3 在GDAL 中转换文件 230
9.4.4 在GDAL 中使用Binmask 232
9.4.5 完整脚本 235
9.5 探索开源光栅文件 .236
9.5.1 USGS EarthExplorer 236
9.5.2 Copernicus Open Access Hub .240
9.5.3 Google Earch Engine 240
9.6 总结 242
第10 章 使用Python 测量气候数据 245
10.1 案例1:使用降水数据验证气候预测 246
10.1.1 目标 246
10.1.2 下载数据 246
10.1.3 使用Xarray 247
10.1.4 合并2015 年和2021 年的数据集 249
10.1.5 生成图像 252
10.1.6 其他探索 256
10.2 案例2:使用WTSS Series 分析亚马逊雨林中的森林砍伐和碳排放 257
10.2.1 安装设置 257
10.2.2 创建地图 260
10.2.3 分析 262
10.2.4 调优 262
10.3 案例3:使用Forest at Risk 对瓜德罗普岛的森林砍伐建模和预测 268
10.3.1 安装配置 269
10.3.2 数据图像化272
10.3.3 数据抽样 273
10.3.4 图像关联 276
10.3.5 使用iCAR 模型对森林被砍伐的概率建模 278
10.3.6 马尔科夫链蒙特卡洛方法(MCMC)距离矩阵 279
10.3.7 使用predict_raster_binomial_iCAR 对森林被砍伐的概率建模 .281
10.3.8 碳排放 .284
10.3.9 分析 285
10.4 总结 285
附录 推荐阅读 . 287
参考资料 291