《PostGIS實戰(第3版)》是一本介紹如何使用PostGIS進行地理數據處理的書籍。它展示了如何使用PostGIS擴展解決現實世界的地理數據問題。本書提供了一些特性和支持,使用戶能夠輕鬆處理地理數據任務,並創建位置感知查詢、制圖、柵格分析和路由應用程序的後端。
《PostGIS實戰(第3版)》的主要內容包括:
學習基本的制圖技巧,以展示地理數據
探索如何使用自定義函數進一步擴展應用程序的功能
引入新的PostGIS特性,如PostGIS窗口函數、並行查詢和矢量切片函數
針對PostGIS 3.1和PostgreSQL 13進行修訂和優化
簡化幾何圖形以提高處理效率
將PostGIS應用擴展到網絡和桌面應用程序
這本書的目標是幫助讀者更好地理解和應用PostGIS,並通過優化查詢和提高效率來改善地理數據處理的速度。它適用於對地理數據處理感興趣的專業人士和開發人員。
9.1.2 對N個最接近的結果使用ST_DWithin和ST_Distance函數 232
9.1.3 使用ST_DWithin函數和DISTINCT ON查找最近的位置 232
9.1.4 與公差相交 233
9.1.5 距離之間的條目 234
9.1.6 使用KNN距離運算符查找N個最近的位置 234
9.2 將KNN用於地理類型 237
9.3 地理標記 239
9.3.1 特定區域的標記數據 240
9.3.2 線性參照:線串的最近捕捉點 240
9.3.3 PostGIS聚類窗口函數 242
9.4 本章小結 244
第10章 PostGIS TIGER 地理編碼 245
10.1 安裝PostGIS TIGER地理編碼器 246
10.2 加載TIGER數據 246
10.2.1 配置表 247
10.2.2 加載國家/地區和州數據 248
10.3 標準化地址 250
10.3.1 使用normalize_address 250
10.3.2 使用PAGC地址標準化程序 252
10.4 地理編碼 254
10.4.1 使用地址文本進行地理編碼 254
10.4.2 使用標準化地址進行地理編碼 256
10.4.3 地理編碼交集 256
10.4.4 批處理地理編碼 257
10.5 反向地理編碼 259
10.6 本章小結 260
第11章 幾何與地理處理 261
11.1 利用空間聚合函數 261
11.1.1 利用多個多邊形集合記錄創建一個多邊形集合 261
11.1.2 將點連為線串 265
11.2 裁剪、拆分和嵌格 267
11.2.1 裁剪 267
11.2.2 拆分 268
11.2.3 嵌格 269
11.3 將線串分段 277
11.3.1 拆分線串 277
11.3.2 用多點線串創建兩點線串 278
11.3.3 在點連接處切斷線串 279
11.4 平移、縮放、旋轉幾何圖形 282
11.4.1 平移 282
11.4.2 縮放 283
11.4.3 旋轉 284
11.5 利用幾何函數操作和創建地理數據 285
11.5.1 cast-safe函數 286
11.5.2 transformation-recommended函數 286
11.6 本章小結 287
第12章 柵格處理 289
12.1 加載和準備柵格數據 289
12.2 利用空間聚合函數形成更大的柵格 291
12.2.1 重組切片文件 291
12.2.2 利用裁剪和合並分割出感興趣的區域 292
12.2.3 使用ST_Union的特定表達式類型 292
12.3 與波段有關的處理 293
12.3.1 利用ST_AddBand將單波段柵格合並成多波段柵格 293
12.3.2 利用ST_Band處理波段的子集 294
12.4 生成柵格切片 294
12.5 柵格和幾何圖形的交集 296
12.5.1 像素統計 298
12.5.2 利用ST_Value函數和ST_SetZ
函數向二維線串添加Z坐標 298
12.5.3 將二維多邊形轉化為三維多面體 300
12.6 柵格統計 301
12.6.1 提取像素值 302
12.6.2 柵格統計函數 304
12.7 地圖代數 306
12.7.1 在表達式和回調函數之間做選擇 306
12.7.2 使用一個單波段地圖代數表達式 307
12.7.3 使用一個單波段地圖代數函數 308
12.7.4 鄰域地圖代數 309
12.8 本章小結 311
第13章 構建和使用拓撲 313
13.1 什麽是拓撲 314
13.2 使用拓撲 314
13.2.1 安裝拓撲擴展 315
13.2.2 創建拓撲 315
13.2.3 拓撲幾何圖形類型 320
13.2.4 對拓撲用法的簡要回顧 323
13.3 維多利亞市的拓撲 323
13.3.1 創建維多利亞的拓撲 323
13.3.2 向拓撲中添加原語 324
13.3.3 創建拓撲幾何圖形 326
13.4 通過編輯拓撲原語來修復拓撲幾何問題 330
13.4.1 通過刪除邊來移除面 332
13.4.2 檢查共享面 333
13.4.3 編輯拓撲幾何 334
13.5 插入和編輯大型數據集 334
13.6 拓撲的簡化 337
13.7 拓撲驗證和匯總函數 338
13.8 本章小結 339
第14章 組織空間數據 341
14.1 空間存儲方法 341
14.1.1 異構列 342
14.1.2 同構列 343
14.1.3 typmod與約束對比 344
14.1.4 表繼承 345
14.1.5 表分區 348
14.2 建模真實的城市 352
14.2.1 使用異構幾何列建模 353
14.2.2 使用同構幾何列建模 356
14.2.3 使用分區建模 358
14.3 創建可自動更新的視圖 363
14.4 使用觸發器和規則 364
14.4.1 觸發器 364
14.4.2 使用INSTEAD OF觸發器 365
14.4.3 使用其他觸發器 366
14.5 本章小結 368
第15章 查詢性能調優 369
15.1 查詢規劃器 369
15.1.1 不同類型的空間查詢 370
15.1.2 公用表表達式及其對規劃的影響 372
15.2 規劃器策略 373
15.3 使用解釋來診斷問題 374
15.3.1 文本解釋與pgAdmin圖形化解釋 375
15.3.2 無索引的規劃 376
15.4 規劃器與索引 380
15.4.1 具有空間索引的規劃 381
15.4.2 索引 383
15.5 常見SQL模式及其對規劃的影響 386
15.5.1 SELECT中的子查詢 386
15.5.2 FROM子查詢與基本公用表表達式 393
15.5.3 窗口函數與自連接 394
15.5.4 橫向連接 396
15.6 系統和函數設置 398
15.6.1 影響規劃策略的關鍵系統變量 399
15.6.2 函數專用設置 401
15.6.3 鼓勵並行規劃 403
15.7 優化空間數據 403
15.7.1 修復無效的幾何圖形 404
15.7.2 通過簡化來減少頂點數量 404
15.7.3 通過拆分幾何圖形來減少頂點數量 404
15.7.4 集群 404
15.8 本章小結 407
第Ⅲ部分 搭配其他工具使用PostGIS
第16章 使用pgRouting和過程化語言擴展PostGIS 411
16.1 使用pgRouting解決網絡路由問題 412
16.2 使用PL擴展PostgreSQL 418
16.2.1 PL的基本安裝 418
16.2.2 你能用PL做什麽 418
16.3 PL/R 420
16.3.1 PL/R入門 420
16.3.2 你能用PL/R做什麽 421
16.3.3 在PL/R中使用R包 424
16.3.4 將幾何圖形轉換為R空間對象並繪制空間對象 426
16.3.5 將繪圖輸出為二進制文件 427
16.4 PL/Python 428
16.4.1 安裝PL/Python 428
16.4.2 編寫一個PL/Python函數 429
16.4.3 使用Python包 430
16.4.4 地理編碼示例 432
16.5 PL/V8:數據庫中的JavaScript 433
16.5.1 安裝PL/V8 433
16.5.2 在數據庫中啟用PL/V8 434
16.5.3 在PL/V8中使用其他JavaScript庫和函數 434
16.5.4 使用PL/V8編寫地圖代數函數 437
16.6 本章小結 440
第17章 在Web應用程序中使用PostGIS 441
17.1 傳統Web技術的局限性 442
17.2 地圖服務器 442
17.2.1 輕量級地圖服務器 443
17.2.2 完整地圖服務器 445
17.3 地圖客戶端 448
17.4 使用MapServer 450
17.4.1 安裝MapServer 450
17.4.2 安全性考慮 452
17.4.3 創建WMS和WFS服務 452
17.4.4 使用反向代理調用地圖服務 455
17.5 使用GeoServer 456
17.5.1 安裝GeoServer 456
17.5.2 設置PostGIS工作空間 456
17.5.3 通過GeoServer WMS/WFS訪問PostGIS圖層 458
17.6 OpenLayers和Leaflet基礎 459
17.6.1 OpenLayers入門 460
17.6.2 Leaflet入門 463
17.6.3 OpenLayers和Leaflet API總結 465
17.7 通過PostGIS查詢和Web腳本顯示數據 465
17.7.1 使用PostGIS和PostgreSQL幾何輸出函數 465
17.7.2 使用PostGIS的MVT輸出函數 470
17.8 本章小結 473
以下內容通過掃描封底二維碼獲取
附錄A 其他資源 475
附錄B 安裝、編譯和升級 479
附錄C SQL入門 489