Python Geospatial Development Essentials

Packt Publishing Ltd
Free sample

This book provides you with the resources to successfully develop your own GIS application in Python. The book begins by walking you through the loading and saving of data structures before you start to build the look and feel of your application and create its interactive map window. You'll then move on to managing, editing, and analyzing spatial data from within the application and finish with instructions for packaging the application for distribution.

By the end of the book, you should be able to use your GIS application as a template for further development, with the potential to expand and customize it to suit your needs.

Read more
Collapse

About the author

Karim Bahgat holds an MA in peace and conflict transformation from the University of Tromso in Norway, where he focused on the use of geographic information systems (GIS), opinion survey data, and open source programming tools in conflict studies. Since then, he has been employed as a research assistant for technical and geospatial work at the Peace Research Institute Oslo (PRIO) and the International Law and Policy Institute (ILPI). Karim was part of the early prototyping of the PRIO-GRID unified spatial data structure for social science and conflict research, and is currently helping develop a new updated version (https://www.prio.org/Data/PRIO-GRID/). His main use of technology, as a developer, has been with Python programming, geospatial tools and mapping, the geocoding of textual data, data visualization, application development, and some web technology. Karim is the author of a journal article publication, numerous data- and GIS-oriented Python programming libraries, the Easy Georeferencer free geocoding software, and several related technical websites, including www.pythongisresources.wordpress.com.

Read more
Collapse
Loading...

Additional Information

Publisher
Packt Publishing Ltd
Read more
Collapse
Published on
Jun 17, 2015
Read more
Collapse
Pages
192
Read more
Collapse
ISBN
9781782174417
Read more
Collapse
Read more
Collapse
Read more
Collapse
Language
English
Read more
Collapse
Genres
Computers / Desktop Applications / General
Computers / Internet / Application Development
Computers / Programming Languages / Python
Read more
Collapse
Content Protection
This content is DRM free.
Read more
Collapse
Read Aloud
Available on Android devices
Read more
Collapse

Reading information

Smartphones and Tablets

Install the Google Play Books app for Android and iPad/iPhone. It syncs automatically with your account and allows you to read online or offline wherever you are.

Laptops and Computers

You can read books purchased on Google Play using your computer's web browser.

eReaders and other devices

To read on e-ink devices like the Sony eReader or Barnes & Noble Nook, you'll need to download a file and transfer it to your device. Please follow the detailed Help center instructions to transfer the files to supported eReaders.
Build your first interactive map and build location-aware applications using cutting-edge examples in PythonAbout This BookLearn the full geo-processing workflow using Python with open source packagesCreate press-quality styled maps and data visualization with high-level and reusable codeProcess massive datasets efficiently using parallel processingWho This Book Is For

Geospatial Development By Example with Python is intended for beginners or advanced developers in Python who want to work with geographic data. The book is suitable for professional developers who are new to geospatial development, for hobbyists, or for data scientists who want to move into some simple development.

What You Will LearnPrepare a development environment with all the tools needed for geo-processing with PythonImport point data and structure an application using Python's resourcesCombine point data from multiple sources, creating intuitive and functional representations of geographic objectsFilter data by coordinates or attributes easily using pure PythonMake press-quality and replicable maps from any dataDownload, transform, and use remote sensing data in your mapsMake calculations to extract information from raster data and show the results on beautiful mapsHandle massive amounts of data with advanced processing techniquesProcess huge satellite images in an efficient wayOptimize geo-processing times with parallel processingIn Detail

From Python programming good practices to the advanced use of analysis packages, this book teaches you how to write applications that will perform complex geoprocessing tasks that can be replicated and reused.

Much more than simple scripts, you will write functions to import data, create Python classes that represent your features, and learn how to combine and filter them.

With pluggable mechanisms, you will learn how to visualize data and the results of analysis in beautiful maps that can be batch-generated and embedded into documents or web pages.

Finally, you will learn how to consume and process an enormous amount of data very efficiently by using advanced tools and modern computers' parallel processing capabilities.

Style and approach

This easy-to-follow book is filled with hands-on examples that illustrate the construction of three sample applications of how to write reusable and interconnected Python code for geo-processing.

Take Python beyond scripting to build robust, reusable, and efficient applicationsAbout This BookGet to grips with Python techniques that address commonly encountered problems in general application development.Develop, package, and deploy efficient applications in a fun way.All-practical coverage of the major areas of application development, including best practices, exception handling, testing, refactoring, design patterns, performance, and GUI application development.Who This Book Is For

Do you know the basics of Python and object oriented programming? Do you want to go an extra mile and learn techniques to make your Python application robust, extensible, and efficient? Then this book is for you.

What You Will LearnBuild a robust application by handling exceptions.Modularize, package, and release the source distribution.Document the code and implement coding standards.Create automated tests to catch bugs in the early development stage.Identify and re-factor badly written code to improve application life.Detect recurring problems in the code and apply design patterns.Improve code efficiency by identifying performance bottlenecks and fixing them.Develop simple GUI applications using Python.In Detail

Python is one of the most widely used dynamic programming languages, supported by a rich set of libraries and frameworks that enable rapid development. But fast paced development often comes with its own baggage that could bring down the quality, performance, and extensibility of an application. This book will show you ways to handle such problems and write better Python applications.

From the basics of simple command-line applications, develop your skills all the way to designing efficient and advanced Python apps. Guided by a light-hearted fantasy learning theme, overcome the real-world problems of complex Python development with practical solutions. Beginning with a focus on robustness, packaging, and releasing application code, you'll move on to focus on improving application lifetime by making code extensible, reusable, and readable. Get to grips with Python refactoring, design patterns and best practices. Techniques to identify the bottlenecks and improve performance are covered in a series of chapters devoted to performance, before closing with a look at developing Python GUIs.

Style and approach

The book uses a fantasy game theme as a medium to explain various topics. Specific aspects of application development are explained in different chapters. In each chapter the reader is presented with an interesting problem which is then tackled using hands-on examples with easy-to-follow instructions.

Enhance your skills in developing multi-touch applications with KivyAbout This BookCreate most diverse apps and learn how to distribute them with the help of the Kivy frameworkExplore Kivy API to develop user interfaces and control multi-touch eventsStep-by-step recipes that provide deeper understanding of the Kivy 1.9.0 frameworkBuild and use your own events, widgets and gestures using features and tools in KivyWho This Book Is For

This book is intended for developers who want to use features of the Kivy framework and develop multi-touch applications. Prior experience with Kivy is not required, although familiarity with Python is expected.

What You Will LearnAccess widgets defined inside Kv language in your Python codeHandle Kivy events to control widgets, touches, the mouse, the keyboard, and animationsRecognize touch shapes and detecting multi-tappingCreate custom events and declare propertiesOrganizing your layouts while working with the ActionBarStore and retrieve the coordinate space contextCreate your own shader and render in a framebufferLeverage Factory objects, multi-touch in iOS and multi-touch in AndroidIn Detail

Kivy is an open-source Python library for rapid development of applications that make use of innovative user interfaces, such as multi-touch apps. It is a promising Python framework to develop UI and UX apps in a cross-platform environment, under the Python philosophy.

Kivy Cookbook is a practical book that will guide you through the Kivy framework to develop apps and get your apps ready for distribution in App Store and Android devices.

You will start off with installing Kivy and building your interfaces. You will learn how to work the accelerometer and create custom events. Then, you will understand how to use the basics, buttons, labels and text inputs and manipulate the widget tree. Next, you will be able to work with manipulating instructions, create an atlas and layouts. Moving on, you will learn packing for Windows and packing for iOS, and use TestDrive.

By the end of the book, you will have learnt in detail the relevant features and tools in Kivy and how to create portable packages to distribute your apps in the most used platforms.

Style and approach

This is an easy-to-follow practical guide packed with graspable recipes that cover important tasks to be performed while developing multi-touch applications with Kivy. All the code used in each recipe is explained in detail.

You Will Learn Python!

Zed Shaw has perfected the world's best system for learning Python. Follow it and you will succeed-just like the hundreds of thousands of beginners Zed has taught to date! You bring the discipline, commitment, and persistence; the author supplies everything else.

In Learn Python the Hard Way, Third Edition, you'll learn Python by working through 52 brilliantly crafted exercises. Read them. Type their code precisely. (No copying and pasting!) Fix your mistakes. Watch the programs run. As you do, you'll learn how software works; what good programs look like; how to read, write, and think about code; and how to find and fix your mistakes using tricks professional programmers use. Most importantly, you'll learn the following, which you need to start writing excellent Python software of your own:

Installing a complete Python environment Organizing and writing code Basic mathematics Variables Strings and text Interacting with users Working with files Looping and logic Data structures using lists and dictionaries Program design Object-oriented programming Inheritance and composition Modules, classes, and objects Python packaging Debugging Automated testing Basic game development Basic web development

It'll be hard at first. But soon, you'll just get it-and that will feel great!

This tutorial will reward you for every minute you put into it. Soon, you'll know one of the world's most powerful, popular programming languages. You'll be a Python programmer.

Watch Zed, too! The accompanying DVD contains 5+ hours of passionate, powerful teaching: a complete Python video course!

©2019 GoogleSite Terms of ServicePrivacyDevelopersArtistsAbout Google|Location: United StatesLanguage: English (United States)
By purchasing this item, you are transacting with Google Payments and agreeing to the Google Payments Terms of Service and Privacy Notice.