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. It elucidates the programming constructs of Python with its high-level toolkits and demonstrates its integration with ArcGIS Theory. Filled with hands-on computer exercises in a logical learning workflow this book promotes increased interactivity between instructors and students while also benefiting professionals in the field with vital knowledge to sharpen their programming skills. Readers receive expert guidance on modules, package management, and handling shapefile formats needed to build their own mini-GIS. Comprehensive and engaging commentary, robust contents, accompanying datasets, and classroom-tested exercises are all housed here to permit users to become competitive in the GIS/IT job market and industry.
Geocomputation with R is for people who want to analyze, visualize and model geographic data with open source software. It is based on R, a statistical programming language that has powerful data processing, visualization, and geospatial capabilities. The book equips you with the knowledge and skills to tackle a wide range of issues manifested in geographic data, including those with scientific, societal, and environmental implications. This book will interest people from many backgrounds, especially Geographic Information Systems (GIS) users interested in applying their domain-specific knowledge in a powerful open source language for data science, and R users interested in extending their skills to handle spatial data. The book is divided into three parts: (I) Foundations, aimed at getting you up-to-speed with geographic data in R, (II) extensions, which covers advanced techniques, and (III) applications to real-world problems. The chapters cover progressively more advanced topics, with early chapters providing strong foundations on which the later chapters build. Part I describes the nature of spatial datasets in R and methods for manipulating them. It also covers geographic data import/export and transforming coordinate reference systems. Part II represents methods that build on these foundations. It covers advanced map making (including web mapping), "bridges" to GIS, sharing reproducible code, and how to do cross-validation in the presence of spatial autocorrelation. Part III applies the knowledge gained to tackle real-world problems, including representing and modeling transport systems, finding optimal locations for stores or services, and ecological modeling. Exercises at the end of each chapter give you the skills needed to tackle a range of geospatial problems. Solutions for each chapter and supplementary materials providing extended examples are available at https://geocompr.github.io/geocompkg/articles/. Dr. Robin Lovelace is a University Academic Fellow at the University of Leeds, where he has taught R for geographic research over many years, with a focus on transport systems. Dr. Jakub Nowosad is an Assistant Professor in the Department of Geoinformation at the Adam Mickiewicz University in Poznan, where his focus is on the analysis of large datasets to understand environmental processes. Dr. Jannes Muenchow is a Postdoctoral Researcher in the GIScience Department at the University of Jena, where he develops and teaches a range of geographic methods, with a focus on ecological modeling, statistical geocomputing, and predictive mapping. All three are active developers and work on a number of R packages, including stplanr, sabre, and RQGIS.
This hands on exercise book starts with an overview of the Python 3.x language. You'll learn the basic constructs of this powerful, easy to learn language for automating your ArcGIS Pro geoprocessing tasks. You'll also learn how to install, configure, and write scripts using the popular PyCharm development environment. We'll then dive into the details of the ArcGIS Pro arcpy module by learning how to execute geoprocessing tools from your scripts. From there you'll learn how to manage project and layer files, and manage the data within those files. You'll discover how to programmatically add, insert, remove, and move layers in table of contents. Next, you'll learn how to apply symbology and update properties of layers, work with 2D and 3D display properties, and manage layouts. You'll also learn how to automate map production through the use of map series functionality, formerly called map books. The later part of the books covers attribute and spatial queries, and the creation of selection sets for feature classes and tables along with the arcpy data access module for insert, updating, and deleting data from feature classes and tables. Finally, we'll close the book by discovering how you can create your own custom geoprocessing tools using custom toolboxes with ArcGIS Pro and Python.
This is the first book to provide sociologists, criminologists, political scientists, and other social scientists with the methodological logic and techniques for doing spatial analysis in their chosen fields of inquiry. The book contains a wealth of examples as to why these techniques are worth doing, over and above conventional statistical techniques using SPSS or other statistical packages. GIS is a methodological and conceptual approach that allows for the linking together of spatial data, or data that is based on a physical space, with non-spatial data, which can be thought of as any data that contains no direct reference to physical locations.
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. It elucidates the programming constructs of Python with its high-level toolkits and demonstrates its integration with ArcGIS Theory. Filled with hands-on computer exercises in a logical learning workflow this book promotes increased interactivity between instructors and students while also benefiting professionals in the field with vital knowledge to sharpen their programming skills. Readers receive expert guidance on modules, package management, and handling shapefile formats needed to build their own mini-GIS. Comprehensive and engaging commentary, robust contents, accompanying datasets, and classroom-tested exercises are all housed here to permit users to become competitive in the GIS/IT job market and industry.
Summary Geoprocessing with Python teaches you how to use the Python programming language, along with free and open source tools, to read, write, and process geospatial data. Purchase of the print book includes a free eBook in PDF, Kindle, and ePub formats from Manning Publications. About the Technology This book is about the science of reading, analyzing, and presenting geospatial data programmatically, using Python. Thanks to dozens of open source Python libraries and tools, you can take on professional geoprocessing tasks without investing in expensive proprietary packages like ArcGIS and MapInfo. The book shows you how. About the Book Geoprocessing with Python teaches you how to access available datasets to make maps or perform your own analyses using free tools like the GDAL, NumPy, and matplotlib Python modules. Through lots of hands-on examples, you’ll master core practices like handling multiple vector file formats, editing geometries, applying spatial and attribute filters, working with projections, and performing basic analyses on vector data. The book also covers how to manipulate, resample, and analyze raster data, such as aerial photographs and digital elevation models. What's Inside Geoprocessing from the ground up Read, write, process, and analyze raster data Visualize data with matplotlib Write custom geoprocessing tools Three additional appendixes available online About the Reader To read this book all you need is a basic knowledge of Python or a similar programming language. About the Author Chris Garrard works as a developer for Utah State University and teaches a graduate course on Python programming for GIS. Table of Contents Introduction Python basics Reading and writing vector data Working with different vector file formats Filtering data with OGR Manipulating geometries with OGR Vector analysis with OGR Using spatial reference systems Reading and writing raster data Working with raster data Map algebra with NumPy and SciPy Map classification Visualizing data Appendixes A - Installation B - References C - OGR - online only D - OSR - online only E - GDAL - online only
This book is written in a helpful, practical style with numerous hands-on recipes and chapters to help you save time and effort by using Python to power ArcGIS to create shortcuts, scripts, tools, and customizations."Programming ArcGIS 10.1 with Python Cookbook" is written for GIS professionals who wish to revolutionize their ArcGIS workflow with Python. Basic Python or programming knowledge is essential(?).
Geographic information systems (GIS) have become increasingly important in helping us understand complex social, economic, and natural dynamics where spatial components play a key role. The critical algorithms used in GIS, however, are notoriously difficult to both teach and understand, in part due to the lack of a coherent representation. GIS Algorithms attempts to address this problem by combining rigorous formal language with example case studies and student exercises. Using Python code throughout, Xiao breaks the subject down into three fundamental areas: Geometric Algorithms Spatial Indexing Spatial Analysis and Modelling With its comprehensive coverage of the many algorithms involved, GIS Algorithms is a key new textbook in this complex and critical area of geography.
Master over 170 recipes that will help you turn QGIS from a desktop GIS tool into a powerful automated geospatial framework About This Book Delve into the undocumented features of the QGIS API Get a set of user-friendly recipes that can automate entire geospatial workflows by connecting Python GIS building blocks into comprehensive processes This book has a complete code upgrade to QGIS 2.18 and 30 new, valuable recipes Who This Book Is For This book is for geospatial analysts who want to learn more about automating everyday GIS tasks as well as programmers responsible for building GIS applications. The short, reusable recipes make concepts easy to understand and combine so you can build larger applications that are easy to maintain. What You Will Learn Use Python and QGIS to produce captivating GIS visualizations and build complex map layouts Find out how to effectively use the poorly-documented and undocumented features of the QGIS Python API Automate entire geospatial workflows by connecting Python GIS building blocks into comprehensive processes Create, import, and edit geospatial data on disk or in-memory Change QGIS settings programmatically to control default behavior Automatically generate PDF map books Build dynamic forms for field input In Detail QGIS is a desktop geographic information system that facilitates data viewing, editing, and analysis. Paired with the most efficient scripting language—Python, we can write effective scripts that extend the core functionality of QGIS. Based on version QGIS 2.18, this book will teach you how to write Python code that works with spatial data to automate geoprocessing tasks in QGIS. It will cover topics such as querying and editing vector data and using raster data. You will also learn to create, edit, and optimize a vector layer for faster queries, reproject a vector layer, reduce the number of vertices in a vector layer without losing critical data, and convert a raster to a vector. Following this, you will work through recipes that will help you compose static maps, create heavily customized maps, and add specialized labels and annotations. As well as this, we'll also share a few tips and tricks based on different aspects of QGIS. Style and approach This book follows a recipe-based problem-solution approach to address and dispel challenges faced when implementing and using QGIS on a regular basis.