Process, analyze, and display geospatial data using Python libraries and related tools
About This Book
- Learn to build a complete geospatial application from scratch using Python
- Create good-looking maps based on the results of your analysis
- This is a fast-paced guide to help you explore the key concepts of geospatial to obtain high quality spatial data
Who This Book Is For
If you are an experienced Python developer and wish to get up-to-speed with geospatial programming, then this book is for you. While familiarity with installing third-party Python libraries would be an advantage, no prior knowledge of geospatial programming is required.
What You Will Learn
- Understand the key geospatial concepts and techniques needed to analyze and work with geospatial data
- Learn how to read and write geospatial data from within your Python code
- Use PostGIS to store spatial data and perform spatial queries
- Use Python libraries to analyze and manipulate geospatial data
- Generate maps based on your spatial data
- Implement complete geospatial analysis systems using Python
- Use the Shapely and NetworkX libraries to solve problems such as distance-area calculations, finding the shortest path between two points, buffering polygons, and much more
In Detail
Python is a highly expressive language that makes it easy to write sophisticated programs. Combining high-quality geospatial data with Python geospatial libraries will give you a powerful toolkit for solving a range of geospatial programming tasks.
The book begins with an introduction to geospatial analysis and programming and explains the ideas behind geospatial data. You will explore Python libraries for building your own geospatial applications. You will learn to create a geospatial database for your application using PostGIS and the psycopg2 library, and see how the Mapnik library can be used to create attractive and useful maps.
Finally, you will learn to use the Shapely and NetworkX libraries to create, analyze, and manipulate complex geometric objects, before implementing a system to match GPS recordings against a database of roads to produce a heatmap of the most frequently used roads.
Erik Westra
Erik Westra has been a professional software developer for over 25 years now, and he has worked almost exclusively in Python for the past decade. Erik's early interest in graphical user interface design led to the development of one of the most advanced urgent courier dispatch systems used by messenger and courier companies worldwide. In recent years, Erik has been involved in the design and implementation of systems matching seekers and providers of goods and services across a range of geographical areas, as well as real-time messaging and payment systems. This work has included the creation of real-time geocoders and map-based views of constantly changing data. Erik is based in New Zealand, and works for companies worldwide. Erik is also the author of the titles Python Geospatial Development and Building Mapping Applications with QGIS, both by Packt Publishing.