Free Sample
+ Collection

Python Geospatial Development

Erik Westra

Working with geo-spatial data isn’t easy, but for many Python developers it’s essential with the growth of Geographic Information Systems. This superb book takes you from the basic concepts to advanced techniques in accessible steps.
RRP $29.99
RRP $49.99
Print + eBook

Want this title & more?

$12.99 p/month

Subscribe to PacktLib

Enjoy full and instant access to over 2000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.

Book Details

ISBN 139781849511544
Paperback508 pages

About This Book

  • Build applications for GIS development using Python
  • Analyze and visualize Geo-Spatial data
  • Comprehensive coverage of key GIS concepts
  • Recommended best practices for storing spatial data in a database
  • Draw maps, place data points onto a map, and interact with maps
  • A practical tutorial with plenty of step-by-step instructions to help you develop a mapping application from scratch

Who This Book Is For

This book is useful for Python developers who want to get up to speed with Open Source GIS in order to build GIS applications or integrate Geo-Spatial features into their applications.

Table of Contents

Chapter 1: Geo-Spatial Development Using Python
Geo-spatial development
Applications of geo-spatial development
Recent developments
Chapter 2: GIS
Core GIS concepts
GIS data formats
Working with GIS data manually
Chapter 3: Python Libraries for Geo-Spatial Development
Reading and writing geo-spatial data
Dealing with projections
Analyzing and manipulating geo-spatial data
Visualizing geo-spatial data
Chapter 4: Sources of Geo-Spatial Data
Sources of geo-spatial data in vector format
Sources of geo-spatial data in raster format
Sources of other types of geo-spatial data
Chapter 5: Working with Geo-Spatial Data in Python
Reading and writing geo-spatial data
Changing datums and projections
Representing and storing geo-spatial data
Working with Shapely geometries
Converting and standardizing units of geometry and distance
Chapter 6: GIS in the Database
Spatially-enabled databases
Spatial indexes
Open source spatially-enabled databases
Commercial spatially-enabled databases
Recommended best practices
Chapter 7: Working with Spatial Data
Designing and building the database
Downloading the data
The "Select Country" script
The "Select Area" script
The "Show Results" script
Application review and improvements
Chapter 8: Using Python and Mapnik to Generate Maps
Introducing Mapnik
Creating an example map
Mapnik in depth
MapGenerator revisited
Map definition files
Chapter 9: Web Frameworks for Python Geo-Spatial Development
Web application concepts
Chapter 10: Putting it All Together: A Complete Mapping Application
About the ShapeEditor
Designing the application
The structure of a Django application
Setting up the database
Setting up the GeoDjango project
Setting up the ShapeEditor application
Defining the data models
Playing with the admin system
Chapter 11: ShapeEditor: Implementing List View, Import, and Export
Implementing the "List Shapefiles" view
Importing Shapefiles
Exporting Shapefiles
Chapter 12: ShapeEditor: Selecting and Editing Features
Selecting a feature to edit
Editing features
Adding features
Deleting features
Deleting Shapefiles
Using ShapeEditor
Further improvements and enhancements

What You Will Learn

  • Develop applications for GIS development using the Python programming language
  • Get to grips with the process of accessing, manipulating, and displaying geo-spatial data
  • Understand some of the major data formats you are likely to encounter when working with geo-spatial data
  • Analyze and manipulate geo-spatial data directly within your Python programs
  • Use powerful Python-based tools for converting geo-spatial data into good-looking maps
  • Learn to read and write to geo-spatial data in both vector and raster format
  • Represent, transfer, and store geo-spatial data using the Well-Known Text (WKT) format
  • Work efficiently with geo-spatial databases using Python
  • Solve complex, real-world geo-spatial problems in your applications using the three spatial databases MySQL, PostGIS, and SpatialLite
  • Explore some of the frameworks available for creating web-based geo-spatial applications
  • Get in touch with major applications and recent trends in the field of Geo-Spatial development

In Detail

Open Source GIS (Geographic Information System) is a growing area with the explosion of applications such as Google Maps, Google Earth, and GPS. The GIS market is growing rapidly and as a Python developer you will find yourself either wanting grounding in GIS or needing to get up to speed to do your job. In today's location-aware world, all commercial Python developers can benefit from an understanding of GIS development gained using this book.

Working with geo-spatial data can get complicated because you are dealing with mathematical models of the Earth's surface. Since Python is a powerful programming language with high-level toolkits, it is well suited to GIS development. will familiarize you with the Python tools required for geo-spatial development such as Mapnik, which is used for mapping in Python. It introduces GIS at the basic level with a clear, detailed walkthrough of the key GIS concepts such as location, distance, units, projections, datums, and GIS data formats. We then examine a number of Python libraries and combine these with geo-spatial data to accomplish a variety of tasks. The book provides an in-depth look at the concept of storing spatial data in a database and how you can use spatial databases as tools to solve a variety of geo-spatial problems.

It goes into the details of generating maps using the Mapnik map-rendering toolkit, and helps you to build a sophisticated web-based geo-spatial map-editing application using GeoDjango, Mapnik, and PostGIS. By the end of the book, you will be able to integrate spatial features into your applications and build a complete mapping application from scratch.


Read More

Recommended for You

Learning Python Data Visualization
$ 28.99