© 2017 – CRC Press
302 pages | 100 B/W Illus.
Combining GIS concepts and fundamental spatial thinking methodology with real programming examples, this book introduces popular Python-based tools and their application to solving real-world problems. A powerful programming language with high-level toolkits, Python is well suited to handling geo-spatial data. Teaching the fundamental programming constructs of Python, this book demonstrates Python’s integration with ArcGIS Theory and offers practical, hands-on computer exercises allowing readers to build their own mini-GIS. Comprehensive and engaging commentary, robust contents, accompanying datasets, and classroom tested exercises; this book promotes increased interactivity between instructor and student.
"GIScience needs more programmers. This book is a great place to start."
— Mark Gahegan, University of Auckland, New Zealand
"Anyone who wants to develop programming skills to solve spatial problems will treasure this book – bringing together as it does practical skills in applying fundamental GIS principles, Python programming and open-source GIS development. This book is developed from the authors’ decades of combined teaching experience, with obvious benefits for training those encountering GIS programming for the first time. The comprehensive online materials are a boon. The treatment of topics proceeds from basic to advanced in a commendably clear and comprehensive manner. This treatment will be particularly useful for students encountering ‘Big’ space-time data that today pervade so many areas of application."
—Tao Cheng, University College London, United Kingdom
"This book will be of benefit to GIS/IT professionals in general as well as to students interested in systematically building GIS programming knowledge and skills. I strongly recommend this book."
— Rui Li, Wuhan University, China
"… an A to Z of GIS. [This book] covers a remarkable breadth of material, from the practical nuts-and-bolts of programming a GIS, to the fundamental concepts that underpin all of spatial information science. As spatial computing skills become increasingly valued both in education and the workplace, a book like this is an invaluable resource for people who want to understand more about and do more with spatial data. Those with a background in GIS and geography will find a wealth of accessible information and exercises to build new programming skills; skilled programmers can uncover the fundamental spatial concepts that are the basis of elegant and robust spatial information systems. By marrying the practice with theory, the book can claim to be a one-stop-shop for all your spatial computing needs."
— Matt Duckham, RMIT University, Melbourne, Australia
"This book will be useful for those studying GIS who wish to deepen their knowledge of how spatial data is handled on the computer and for those with IT skills who wish to understand more about the particulars of spatial data. A strong plus is that the book takes a very hands-on approach with lots of practical examples and problems for the reader to work on. Python is used as the language which is a good choice since it is freely available."
— Steve Wise, University of Sheffield, United Kingdom
"In today’s GIS job market, Python Programming and ArcGIS are the must-have skills for many students and professionals. This book provides excellent basic programming concepts and step-by-step code examples for GIS students and professionals to enhance their programming skills. GIS professionals and students will learn fundamental programming concepts and great examples in Object-Oriented Programming, Data Visualization, GIS Data Structures, and GIS Algorithms."
— Ming-Hsiang Tsou, San Diego State University, California, USA
Introduction. Objected Oriented Programming 2.1. Classes and Objects. Python Intro 3.1. Syntax. Python language control structure 4.1. Loops. Point, Polyline, Polygon Classes 5.1. Point. Python Programming Environment 6.1. Interactive GUI Vs. File based. Shape File Handling 7.1. Binary Data and Python Processing. Vector Algorithm I 8.1. Line Intersection. Raster Data Algorithm 9.1. Image and Digital Representation. Network Data Algorithms 10.1. Network. Surface Data Algorithms 11.1. Surface and 3D. Programming Performance 12.1. Overview. Advanced Topics 13.1. GIS Algorithms and Modeling. Appendix A. Python Syntax. Appendix B. GIS Algorithm. Appendix C Software Package. Answers to Problems. Glossary. Bibliography. Index.