Python geospatial development: learn to build sophisticated mapping applications from scratch using Python tools for geospatial development
Gespeichert in:
1. Verfasser: | |
---|---|
Format: | Buch |
Sprache: | English |
Veröffentlicht: |
Birmingham
Packt Publishing
2013
|
Ausgabe: | Second Edition: May 2013 |
Schlagworte: | |
Online-Zugang: | Inhaltsverzeichnis |
Beschreibung: | VIII, 488 Seiten Diagramme, Illustrationen, Karten 24 cm |
ISBN: | 9781782161523 178216152X |
Internformat
MARC
LEADER | 00000nam a2200000 c 4500 | ||
---|---|---|---|
001 | BV041217417 | ||
003 | DE-604 | ||
005 | 20160627 | ||
007 | t | ||
008 | 130813s2013 a||| |||| 00||| eng d | ||
020 | |a 9781782161523 |9 978-1-78216-152-3 | ||
020 | |a 178216152X |9 1-78216-152-X | ||
035 | |a (OCoLC)869345204 | ||
035 | |a (DE-599)BVBBV041217417 | ||
040 | |a DE-604 |b ger |e rda | ||
041 | 0 | |a eng | |
049 | |a DE-83 |a DE-523 |a DE-739 | ||
084 | |a RB 10104 |0 (DE-625)142220:12617 |2 rvk | ||
084 | |a ST 250 |0 (DE-625)143626: |2 rvk | ||
100 | 1 | |a Westra, Erik |0 (DE-588)1013265548 |4 aut | |
245 | 1 | 0 | |a Python geospatial development |b learn to build sophisticated mapping applications from scratch using Python tools for geospatial development |c Erik Westra |
250 | |a Second Edition: May 2013 | ||
264 | 1 | |a Birmingham |b Packt Publishing |c 2013 | |
300 | |a VIII, 488 Seiten |b Diagramme, Illustrationen, Karten |c 24 cm | ||
336 | |b txt |2 rdacontent | ||
337 | |b n |2 rdamedia | ||
338 | |b nc |2 rdacarrier | ||
650 | 0 | 7 | |a Softwareentwicklung |0 (DE-588)4116522-6 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Python |g Programmiersprache |0 (DE-588)4434275-5 |2 gnd |9 rswk-swf |
650 | 0 | 7 | |a Geoinformationssystem |0 (DE-588)4261642-6 |2 gnd |9 rswk-swf |
689 | 0 | 0 | |a Geoinformationssystem |0 (DE-588)4261642-6 |D s |
689 | 0 | 1 | |a Softwareentwicklung |0 (DE-588)4116522-6 |D s |
689 | 0 | 2 | |a Python |g Programmiersprache |0 (DE-588)4434275-5 |D s |
689 | 0 | |5 DE-604 | |
856 | 4 | 2 | |m HBZ Datenaustausch |q application/pdf |u http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=026192024&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |3 Inhaltsverzeichnis |
999 | |a oai:aleph.bib-bvb.de:BVB01-026192024 |
Datensatz im Suchindex
_version_ | 1804150652795879425 |
---|---|
adam_text | Titel: Python geospatial development
Autor: Westra, Erik
Jahr: 2013
Table of Contents
Preface
Chapter 1: Geospatial Development Using Python________________7
Python 7
Geospatial development 9
Applications of geospatial development 12
Analyzing geospatial data 12
Visualizing geospatial data 14
Creating a geospatial mash-up 16
Recent developments 17
Summary 19
Chapter 2: GIS_____________________________________________21
Core GIS concepts 21
Location 22
Distance 25
Units 27
Projections 29
Cylindrical projections 29
Conic projections 31
Azimuthal projections 32
The nature of map projections 33
Coordinate systems 34
Datums 36
Shapes 37
GIS data formats 39
Working with GIS data manually 41
Summary 49
Table of Contents
Chapter 3: Python Libraries for Geospatial Development__________51
Reading and writing geospatial data 51
GDAL/OGR 52
GDAL design 52
GDAL example code 55
OGR design 56
OGR example code 57
Documentation 58
Availability 58
Dealing with projections 59
pyproj 59
Design 60
Proj 60
Geod 61
Example code 62
Documentation 63
Availability 64
Analyzing and manipulating geospatial data 66
Shapely 66
Design 66
Example code 68
Documentation 69
Availability 69
Visualizing geospatial data 70
Mapnik 71
Design 72
Example code 74
Documentation 76
Availability 76
Summary 77
Chapter 4: Sources of Geospatial Data_________________________79
Sources of geospatial data in vector format 80
OpenStreetMap 80
Data format 81
Obtaining and using OpenStreetMap data 82
TIGER 84
Data format 86
Obtaining and using TIGER data 87
Natural Earth 88
Data format 89
Obtaining and using Natural Earth vector data 89
[»]
Table of Contents
Global, self-consistent, hierarchical, high-resolution
shoreline database (GSHHS) 90
Data format 91
Obtaining the GSHHS database 92
World Borders Dataset 92
Data format 93
Obtaining World Borders Dataset 93
Sources of geospatial data in raster format 93
Landsat 94
Data format 95
Obtaining Landsat imagery 95
Natural Earth 98
Data format 99
Obtaining and using Natural Earth raster data 99
Global Land One-kilometer Base Elevation (GLOBE) 100
Data format 100
Obtaining and using GLOBE data 101
National Elevation Dataset (NED) 102
Data format 103
Obtaining and using NED data 103
Sources of other types of geospatial data 105
GEOnet Names Server 106
Data format 107
Obtaining and using GEOnet Names Server data 107
Geographic Names Information System (GNIS) 107
Data format 108
Obtaining and using GNIS Data 109
Choosing your geospatial data source 109
Summary 110
Chapter 5: Working with Geospatial Data in Python_____________Ili
Pre-requisites 111
Reading and writing geospatial data 112
Task - calculate the bounding box for each country in the world 112
Task - save the country bounding boxes into a shapefile 114
Task - analyze height data using a digital elevation map 119
Changing datums and projections 126
Task - change projections to combine shapefiles using geographic
and UTM coordinates 127
Task - change datums to allow older and newer TIGER data to
be combined 132
Representing and storing geospatial data 135
Task - define the border between Thailand and Myanmar 136
[Hi]
Table of Contents
Task - save geometries into a text file 140
Performing geospatial calculations 141
Task - identify parks in or near urban areas 141
Converting and standardizing units of geometry and distance 146
Task - calculate the length of the Thai-Myanmar border 147
Task - find a point 132.7 kilometers west of Soshone, California 154
Exercises 156
Summary 158
Chapter 6: GIS in the Database_______________________________159
Spatially-enabled databases 159
Spatial indexes 160
Open source spatially-enabled databases 163
MySQL 163
PostGIS 168
Installing and configuring PostGIS 168
Using PostGIS 170
Documentation 172
Advanced PostGIS Features 173
SpatiaLite 174
Installing SpatiaLite 174
Installing pysqlite 175
Accessing SpatiaLite from Python 175
Documentation 176
Using SpatiaLite 177
SpatiaLite capabilities 178
Commercial Spatially-enabled database 179
Oracle 180
MS SQL Server 180
Recommended best practices 181
Using the database to keep track of spatial references 181
Using the appropriate spatial reference for your data 183
Option 1 - using a database that supports geographies 184
Option 2 - transform features as required 185
Option 3 - transform features from the outset 185
When to use unprotected coordinates 185
Avoiding on-the-fly transformations within a query 186
Don t create geometries within a query 187
Using spatial indexes appropriately 188
Knowing the limits of your database s query optimizer 189
MySQL 189
PostGIS 191
SpatiaLite 193
[iv]
Table of Contents
Working with geospatial databases using Python 195
Prerequisites 195
Working with MySQL 195
Working with PostGIS 199
Working with SpatiaLite 201
Comparing the databases 204
Summary 205
Chapter 7: Working with Spatial Data_________________________207
About DISTAL 207
Designing and building the database 211
Downloading the data 216
World Borders Dataset 216
GSHHS 216
GNIS 216
GEOnet Names Server 217
Importing the data 217
World Borders Dataset 218
GSHHS 220
US place name data 222
Worldwide places name data 227
Implementing the DISTAL application 229
The shared database module 232
The select country script 233
The select area script 236
Calculating the bounding box 241
Calculating the map s dimensions 242
Setting up the data source 245
Rendering the map image 246
The show results script 248
Identifying the clicked-on point 249
Identifying features by distance 250
Displaying the results 259
Application review and improvements 262
Usability 262
Quality 264
Place name issues 264
Lat/Long coordinate problems 264
Performance 266
Finding the problem 266
Improving performance 269
Calculating the tiled shorelines 271
[v]
Table of Contents
Using tiled shorelines 280
Analyzing performance improvement 282
Summary 282
Chapter 8: Using Python and Mapnik to Generate Maps__________285
Introducing Mapnik 286
Creating an example map 292
Mapnik in depth 296
Data sources 296
Shapefile 297
PostGIS 298
Gdal 300
Ogr 301
SQLite 302
OSM 303
MemoryDatasource 304
Rules, filters, and styles 304
Filters 305
Scale denominators 307
Else rules 309
Also rules 309
Symbolizers 310
Drawing lines 310
Drawing polygons 316
Drawing labels 319
Drawing points 329
Drawing raster images 333
Using colors 335
Maps and layers 336
Map attributes and methods 337
Layer attributes and methods 338
Map rendering 339
MapGenerator revisited 341
The MapGenerator interface 342
Creating the main map layer 343
Displaying points on the map 344
Rendering the map 345
What the map generator teaches us 346
Map definition files 346
Summary 350
Chapter 9: Putting It All Together - a Complete Mapping System 353
About ShapeEditor 353
Designing ShapeEditor 357
Importing a shapefile 358
[vi]
Table of Contents
Selecting a feature 360
Editing a feature 362
Exporting a shapefile 362
Prerequisites 362
The structure of a Django application 363
Models 365
Views 366
URL dispatching 366
Templates 369
Setting up the database 371
Setting up the ShapeEditor project 373
Defining ShapeEditor s applications 375
Creating a shared application 375
Defining data models 377
Shapefile 378
Attribute 378
Feature 379
AttributeValue 379
The models.py file 380
Playing with the admin system 384
Summary 391
Chapter 10: ShapeEditor- Implementing List View, Import,
and Export____________________________________________________393
Implementing the list shapefiles view 393
Importing shapefiles 398
The import shapefile view function 399
Extracting the uploaded shapefile 403
Importing the shapefile s contents 405
Open the shapefile 405
Add the Shapefile object to the database 406
Define the shapefile s attributes 407
Store the shapefile s features 408
Store the shapefile s attributes 410
Cleaning up 413
Exporting shapefiles 414
Defining the OGR shapefile 415
Saving the features into the shapefile 416
Saving the attributes into the shapefile 418
Compressing the shapefile 420
Deleting temporary files 420
[vii]
Table of Contents
Returning the ZIP archive to the user 420
Summary 422
Chapter 11: ShapeEditor-Selecting and Editing Features_______423
Selecting a feature to edit 424
Implementing Tile Map Server 425
Setting up the base map 435
Tile rendering 438
Using OpenLayers to display the map 444
Intercepting mouse clicks 449
Implementing the find feature view 454
Editing features 460
Adding features 468
Deleting features 471
Deleting shapefiles 472
Using ShapeEditor 474
Further improvements and enhancements 474
Summary 475
Index 477
[viii]
|
any_adam_object | 1 |
author | Westra, Erik |
author_GND | (DE-588)1013265548 |
author_facet | Westra, Erik |
author_role | aut |
author_sort | Westra, Erik |
author_variant | e w ew |
building | Verbundindex |
bvnumber | BV041217417 |
classification_rvk | RB 10104 ST 250 |
ctrlnum | (OCoLC)869345204 (DE-599)BVBBV041217417 |
discipline | Informatik Geographie |
edition | Second Edition: May 2013 |
format | Book |
fullrecord | <?xml version="1.0" encoding="UTF-8"?><collection xmlns="http://www.loc.gov/MARC21/slim"><record><leader>01720nam a2200397 c 4500</leader><controlfield tag="001">BV041217417</controlfield><controlfield tag="003">DE-604</controlfield><controlfield tag="005">20160627 </controlfield><controlfield tag="007">t</controlfield><controlfield tag="008">130813s2013 a||| |||| 00||| eng d</controlfield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">9781782161523</subfield><subfield code="9">978-1-78216-152-3</subfield></datafield><datafield tag="020" ind1=" " ind2=" "><subfield code="a">178216152X</subfield><subfield code="9">1-78216-152-X</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(OCoLC)869345204</subfield></datafield><datafield tag="035" ind1=" " ind2=" "><subfield code="a">(DE-599)BVBBV041217417</subfield></datafield><datafield tag="040" ind1=" " ind2=" "><subfield code="a">DE-604</subfield><subfield code="b">ger</subfield><subfield code="e">rda</subfield></datafield><datafield tag="041" ind1="0" ind2=" "><subfield code="a">eng</subfield></datafield><datafield tag="049" ind1=" " ind2=" "><subfield code="a">DE-83</subfield><subfield code="a">DE-523</subfield><subfield code="a">DE-739</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">RB 10104</subfield><subfield code="0">(DE-625)142220:12617</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="084" ind1=" " ind2=" "><subfield code="a">ST 250</subfield><subfield code="0">(DE-625)143626:</subfield><subfield code="2">rvk</subfield></datafield><datafield tag="100" ind1="1" ind2=" "><subfield code="a">Westra, Erik</subfield><subfield code="0">(DE-588)1013265548</subfield><subfield code="4">aut</subfield></datafield><datafield tag="245" ind1="1" ind2="0"><subfield code="a">Python geospatial development</subfield><subfield code="b">learn to build sophisticated mapping applications from scratch using Python tools for geospatial development</subfield><subfield code="c">Erik Westra</subfield></datafield><datafield tag="250" ind1=" " ind2=" "><subfield code="a">Second Edition: May 2013</subfield></datafield><datafield tag="264" ind1=" " ind2="1"><subfield code="a">Birmingham</subfield><subfield code="b">Packt Publishing</subfield><subfield code="c">2013</subfield></datafield><datafield tag="300" ind1=" " ind2=" "><subfield code="a">VIII, 488 Seiten</subfield><subfield code="b">Diagramme, Illustrationen, Karten</subfield><subfield code="c">24 cm</subfield></datafield><datafield tag="336" ind1=" " ind2=" "><subfield code="b">txt</subfield><subfield code="2">rdacontent</subfield></datafield><datafield tag="337" ind1=" " ind2=" "><subfield code="b">n</subfield><subfield code="2">rdamedia</subfield></datafield><datafield tag="338" ind1=" " ind2=" "><subfield code="b">nc</subfield><subfield code="2">rdacarrier</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Softwareentwicklung</subfield><subfield code="0">(DE-588)4116522-6</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Python</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4434275-5</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="650" ind1="0" ind2="7"><subfield code="a">Geoinformationssystem</subfield><subfield code="0">(DE-588)4261642-6</subfield><subfield code="2">gnd</subfield><subfield code="9">rswk-swf</subfield></datafield><datafield tag="689" ind1="0" ind2="0"><subfield code="a">Geoinformationssystem</subfield><subfield code="0">(DE-588)4261642-6</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="1"><subfield code="a">Softwareentwicklung</subfield><subfield code="0">(DE-588)4116522-6</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2="2"><subfield code="a">Python</subfield><subfield code="g">Programmiersprache</subfield><subfield code="0">(DE-588)4434275-5</subfield><subfield code="D">s</subfield></datafield><datafield tag="689" ind1="0" ind2=" "><subfield code="5">DE-604</subfield></datafield><datafield tag="856" ind1="4" ind2="2"><subfield code="m">HBZ Datenaustausch</subfield><subfield code="q">application/pdf</subfield><subfield code="u">http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=026192024&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA</subfield><subfield code="3">Inhaltsverzeichnis</subfield></datafield><datafield tag="999" ind1=" " ind2=" "><subfield code="a">oai:aleph.bib-bvb.de:BVB01-026192024</subfield></datafield></record></collection> |
id | DE-604.BV041217417 |
illustrated | Illustrated |
indexdate | 2024-07-10T00:42:20Z |
institution | BVB |
isbn | 9781782161523 178216152X |
language | English |
oai_aleph_id | oai:aleph.bib-bvb.de:BVB01-026192024 |
oclc_num | 869345204 |
open_access_boolean | |
owner | DE-83 DE-523 DE-739 |
owner_facet | DE-83 DE-523 DE-739 |
physical | VIII, 488 Seiten Diagramme, Illustrationen, Karten 24 cm |
publishDate | 2013 |
publishDateSearch | 2013 |
publishDateSort | 2013 |
publisher | Packt Publishing |
record_format | marc |
spelling | Westra, Erik (DE-588)1013265548 aut Python geospatial development learn to build sophisticated mapping applications from scratch using Python tools for geospatial development Erik Westra Second Edition: May 2013 Birmingham Packt Publishing 2013 VIII, 488 Seiten Diagramme, Illustrationen, Karten 24 cm txt rdacontent n rdamedia nc rdacarrier Softwareentwicklung (DE-588)4116522-6 gnd rswk-swf Python Programmiersprache (DE-588)4434275-5 gnd rswk-swf Geoinformationssystem (DE-588)4261642-6 gnd rswk-swf Geoinformationssystem (DE-588)4261642-6 s Softwareentwicklung (DE-588)4116522-6 s Python Programmiersprache (DE-588)4434275-5 s DE-604 HBZ Datenaustausch application/pdf http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=026192024&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA Inhaltsverzeichnis |
spellingShingle | Westra, Erik Python geospatial development learn to build sophisticated mapping applications from scratch using Python tools for geospatial development Softwareentwicklung (DE-588)4116522-6 gnd Python Programmiersprache (DE-588)4434275-5 gnd Geoinformationssystem (DE-588)4261642-6 gnd |
subject_GND | (DE-588)4116522-6 (DE-588)4434275-5 (DE-588)4261642-6 |
title | Python geospatial development learn to build sophisticated mapping applications from scratch using Python tools for geospatial development |
title_auth | Python geospatial development learn to build sophisticated mapping applications from scratch using Python tools for geospatial development |
title_exact_search | Python geospatial development learn to build sophisticated mapping applications from scratch using Python tools for geospatial development |
title_full | Python geospatial development learn to build sophisticated mapping applications from scratch using Python tools for geospatial development Erik Westra |
title_fullStr | Python geospatial development learn to build sophisticated mapping applications from scratch using Python tools for geospatial development Erik Westra |
title_full_unstemmed | Python geospatial development learn to build sophisticated mapping applications from scratch using Python tools for geospatial development Erik Westra |
title_short | Python geospatial development |
title_sort | python geospatial development learn to build sophisticated mapping applications from scratch using python tools for geospatial development |
title_sub | learn to build sophisticated mapping applications from scratch using Python tools for geospatial development |
topic | Softwareentwicklung (DE-588)4116522-6 gnd Python Programmiersprache (DE-588)4434275-5 gnd Geoinformationssystem (DE-588)4261642-6 gnd |
topic_facet | Softwareentwicklung Python Programmiersprache Geoinformationssystem |
url | http://bvbr.bib-bvb.de:8991/F?func=service&doc_library=BVB01&local_base=BVB01&doc_number=026192024&sequence=000002&line_number=0001&func_code=DB_RECORDS&service_type=MEDIA |
work_keys_str_mv | AT westraerik pythongeospatialdevelopmentlearntobuildsophisticatedmappingapplicationsfromscratchusingpythontoolsforgeospatialdevelopment |