Learning Geospatial Analysis with Python

Learning Geospatial Analysis with Python
eBook: $29.99
Formats: PDF, PacktLib, ePub and Mobi formats
save 15%!
Print + free eBook + free PacktLib access to the book: $79.98    Print cover: $49.99
save 37%!
Free Shipping!
UK, US, Europe and selected countries in Asia.
Also available on:
Table of Contents
Sample Chapters
  • Construct applications for GIS development by exploiting Python
  • Focuses on built-in Python modules and libraries compatible with the Python Packaging Index distribution system – no compiling of C libraries necessary
  • This is a practical, hands-on tutorial that teaches you all about Geospatial analysis in Python

Book Details

Language : English
Paperback : 364 pages [ 235mm x 191mm ]
Release Date : October 2013
ISBN : 1783281138
ISBN 13 : 9781783281138
Author(s) : Joel Lawhead
Topics and Technologies : All Books, Application Development, Open Source

Table of Contents

Chapter 1: Learning Geospatial Analysis with Python
Chapter 2: Geospatial Data
Chapter 3: The Geospatial Technology Landscape
Chapter 4: Geospatial Python Toolbox
Chapter 5: Python and Geographic Information Systems
Chapter 6: Python and Remote Sensing
Chapter 7: Python and Elevation Data
Chapter 8: Advanced Geospatial Python Modelling
Chapter 9: Real-Time Data
Chapter 10: Putting It All Together
  • Chapter 1: Learning Geospatial Analysis with Python
    • Geospatial analysis and our world
      • Beyond politics
    • History of geospatial analysis
      • Geographic Information Systems
      • Remote sensing
      • Elevation data
      • Computer-aided drafting
    • Geospatial analysis and computer programming
      • Object-oriented programming for geospatial analysis
    • Importance of geospatial analysis
    • Geographic Information System concepts
      • Thematic maps
      • Spatial databases
      • Spatial indexing
      • Metadata
      • Map projections
      • Rendering
    • Raster data concepts
      • Images as data
      • Remote sensing and color
    • Common vector GIS concepts
      • Data structures
      • Buffer
      • Dissolve
      • Generalize
      • Intersection
      • Merge
      • Point in polygon
      • Union
      • Join
      • Geospatial rules about polygons
    • Common raster data concepts
      • Band math
      • Change detection
      • Histogram
      • Feature extraction
      • Supervised classification
      • Unsupervised classification
    • Creating the simplest possible Python GIS
      • Getting started with Python
      • Building SimpleGIS
    • Summary
    • Chapter 2: Geospatial Data
      • Data structures
        • Common traits
          • Geo-location
          • Subject information
          • Spatial indexing
          • Metadata
          • File structure
      • Vector data
        • Shapefiles
        • CAD files
        • Tag and markup-based formats
        • GeoJSON
      • Raster data
        • TIFF files
        • JPEG, GIF, BMP, and PNG
        • Compressed formats
        • ASCII GRIDS
        • World files
      • Point cloud data
      • Summary
      • Chapter 3: The Geospatial Technology Landscape
        • Data access
          • GDAL
          • OGR
        • Computational geometry
          • PROJ.4
          • CGAL
          • JTS
          • GEOS
          • PostGIS
          • Other spatially-enabled databases
            • Oracle spatial and graph
            • ArcSDE
            • Microsoft SQL Server
            • MySQL
          • SpatiaLite
          • Routing
            • Esri Network Analyst and Spatial Analyst
            • pgRouting
        • Desktop tools
          • Quantum GIS
          • OpenEV
          • GRASS GIS
          • uDig
          • gvSIG
          • OpenJUMP
          • Google Earth
          • NASA World Wind
          • ArcGIS
        • Metadata management
          • GeoNetwork
          • CatMDEdit
        • Summary
        • Chapter 4: Geospatial Python Toolbox
          • Installing third-party Python modules
            • Installing GDAL
              • Windows
              • Linux
              • Mac OS X
          • Python networking libraries for acquiring data
            • Python urllib module
            • FTP
            • ZIP and TAR files
          • Python markup and tag-based parsers
            • The minidom module
            • ElementTree
              • Building XML
            • WKT
          • Python JSON libraries
            • json module
            • geojson module
          • OGR
          • PyShp
          • dbfpy
          • Shapely
          • GDAL
          • NumPy
          • PIL
          • PNGCanvas
          • PyFPDF
          • Spectral Python
          • Summary
          • Chapter 5: Python and Geographic Information Systems
            • Measuring distance
              • Pythagorean theorem
              • Haversine formula
              • Vincenty formula
            • Coordinate conversion
            • Reprojection
            • Editing shapefiles
              • Accessing the shapefile
              • Reading shapefile attributes
              • Reading shapefile geometry
              • Changing a shapefile
                • Adding fields
              • Merging shapefiles
              • Splitting shapefiles
                • Subsetting spatially
            • Performing selections
              • Point in polygon formula
            • Attribute selections
          • Creating images for visualization
          • Dot density calculations
          • Choropleth maps
          • Using spreadsheets
          • Using GPS data
          • Summary
            • Chapter 6: Python and Remote Sensing
              • Swapping image bands
              • Creating histograms
                • Performing a histogram stretch
              • Clipping images
              • Classifying images
              • Extracting features from images
              • Change detection
              • Summary
              • Chapter 7: Python and Elevation Data
                • ASCII Grid files
                  • Reading grids
                  • Writing grids
                • Creating a shaded relief
                • Creating elevation contours
                • Working with LIDAR
                  • Creating a grid from LIDAR
                  • Using PIL to visualize LIDAR
                  • Creating a Triangulated Irregular Network (TIN)
                • Summary
                • Chapter 8: Advanced Geospatial Python Modelling
                  • Creating an NDVI
                    • Setting up the framework
                    • Loading the data
                    • Rasterizing the shapefile
                    • Clipping the bands
                    • Using the NDVI formula
                    • Classifying the NDVI
                      • Additional functions
                      • Loading the NDVI
                      • Creating classes
                  • Creating a flood inundation model
                    • The flood fill function
                    • Making a flood
                  • Least cost path analysis
                    • Setting up the test grid
                    • The simple A* algorithm
                    • Generating the test path
                    • Viewing the test output
                    • The real-world example
                      • Loading the grid
                      • Defining the helper functions
                      • The real-world A* algorithm
                      • Generating a real-world path
                  • Summary
                  • Chapter 9: Real-Time Data
                    • Tracking vehicles
                      • Nextbus agency list
                      • Nextbus route list
                      • Nextbus vehicle locations
                      • Mapping Nextbus locations
                    • Storm chasing
                    • Summary
                    • Chapter 10: Putting It All Together
                      • A typical GPS report
                      • Working with GPX-Reporter.py
                        • Stepping through the program
                        • Initial setup
                        • Working with utility functions
                        • Parsing the GPX
                        • Getting the bounding box
                        • Downloading OpenStreetMap images
                        • Creating the hillshade
                        • Creating maps
                        • Measuring elevation
                        • Measuring distance
                        • Retrieving weather data
                      • Summary

                      Joel Lawhead

                      Joel Lawhead is a PMI-certified Project Management Professional (PMP) and the Chief Information Officer (CIO) for NVisionSolutions.com, an award-winning firm specializing in geospatial technology integration and sensor engineering. He began using Python in 1997 and began combining it with geospatial software development in 2000. He has been published in two editions of the Python Cookbook by O'Reilly. He is also the developer of the widely used open source Python Shapefile Library (PyShp) and maintains the geospatial technical blog GeospatialPython.com and Twitter feed @SpatialPython discussing the use of the Python programming language within the geospatial industry. In 2011, he reverse engineered and published the undocumented shapefile spatial indexing format and assisted fellow geospatial Python developer, Marc Pfister, in reversing the algorithm used, allowing developers around the world to create better-integrated and more robust geospatial applications involving shapefiles. He has served as the lead architect, project manager, and co-developer for geospatial applications used by US government agencies including NASA, FEMA, NOAA, the US Navy, as well as many commercial and non-profit organizations. In 2002, he received the international "Esri Special Achievment in GIS" award for work on the Real-time Emergency Action Coordination Tool (REACT) for emergency management using geospatial analysis.
                      Sorry, we don't have any reviews for this title yet.

                      Code Downloads

                      Download the code and support files for this book.

                      Submit Errata

                      Please let us know if you have found any errors not listed on this list by completing our errata submission form. Our editors will check them and add them to this list. Thank you.

                      Sample chapters

                      You can view our sample chapters and prefaces of this title on PacktLib or download sample chapters in PDF format.

                      Frequently bought together

                      Learning Geospatial Analysis with Python +    Haskell Data Analysis Cookbook =
                      50% Off
                      the second eBook
                      Price for both: €33.25

                      Buy both these recommended eBooks together and get 50% off the cheapest eBook.

                      What you will learn from this book

                      • Automate Geospatial analysis workflows using Python
                      • Code the simplest possible GIS in 60 lines of Python
                      • Mold thematic maps with Python tools
                      • Get a hold of the various forms the geospatial data comes in
                      • Produce elevation contours using Python tools
                      • Create flood inundation models
                      • Learn Real-Time Data tracking and apply it in storm chasing

                      In Detail

                      Geospatial analysis is used in almost every field you can think of from medicine, to defense, to farming. It is an approach to use statistical analysis and other informational engineering to data which has a geographical or geospatial aspect. And this typically involves applications capable of geospatial display and processing to get a compiled and useful data.

                      "Learning Geospatial Analysis with Python" uses the expressive and powerful Python programming language to guide you through geographic information systems, remote sensing, topography, and more. It explains how to use a framework in order to approach Geospatial analysis effectively, but on your own terms.

                      "Learning Geospatial Analysis with Python" starts with a background of the field, a survey of the techniques and technology used, and then splits the field into its component speciality areas: GIS, remote sensing, elevation data, advanced modelling, and real-time data.

                      This book will teach you everything there is to know, from using a particular software package or API to using generic algorithms that can be applied to Geospatial analysis. This book focuses on pure Python whenever possible to minimize compiling platform-dependent binaries, so that you don’t become bogged down in just getting ready to do analysis.

                      "Learning Geospatial Analysis with Python" will round out your technical library with handy recipes and a good understanding of a field that supplements many a modern day human endeavors.


                      This is a tutorial-style book that helps you to perform Geospatial and GIS analysis with Python and its tools/libraries. This book will first introduce various Python-related tools/packages in the initial chapters before moving towards practical usage, examples, and implementation in specialized kinds of Geospatial data analysis.

                      Who this book is for

                      This book is for anyone who wants to understand digital mapping and analysis and who uses Python or another scripting language for automation or crunching data manually.This book primarily targets Python developers, researchers, and analysts who want to perform Geospatial, modeling, and GIS analysis with Python.

                      Code Download and Errata
                      Packt Anytime, Anywhere
                      Register Books
                      Print Upgrades
                      eBook Downloads
                      Video Support
                      Contact Us
                      Awards Voting Nominations Previous Winners
                      Judges Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software
                      Open Source CMS Hall Of Fame CMS Most Promising Open Source Project Open Source E-Commerce Applications Open Source JavaScript Library Open Source Graphics Software