Python for ArcGIS Pro: Automate cartography and data analysis using ArcPy, ArcGIS API for Python, Notebooks, and pandas
Silas Toms , Bill Parker
- Learn the core components of the two Python modules for ArcGIS: ArcPy and ArcGIS API for Python
- Use ArcPy, pandas, NumPy, and ArcGIS in ArcGIS Pro Notebooks to manage and analyze geospatial data at scale
- Integrate with ArcGIS Online using Python to publish and manage data
Integrating Python into your day-to-day ArcGIS work is highly recommended when dealing with large amounts of geospatial data. Python for ArcGIS Pro aims to help you get your work done faster, with greater repeatability and higher confidence in your results.
Starting from programming basics and building in complexity, two experienced ArcGIS professionals-turned-Python programmers teach you how to incorporate scripting at each step: automating the production of maps for print, managing data between ArcGIS Pro and ArcGIS Online, creating custom script tools for sharing, and then running data analysis and visualization on top of the ArcGIS geospatial library, all using Python.
You'll use ArcGIS Pro Notebooks to explore and analyze geospatial data, and write data engineering scripts to manage ongoing data processing and data transfers. This exercise-based book also includes three rich real-world case studies, giving you an opportunity to apply and extend the concepts you studied earlier.
Irrespective of your expertise level with Esri software or the Python language, you'll benefit from this book's hands-on approach, which takes you through the major uses of Python for ArcGIS Pro to boost your ArcGIS productivity.
What you will learn
- Automate map production to make and edit maps at scale, cutting down on repetitive tasks
- Publish map layer data to ArcGIS Online
- Automate data updates using the ArcPy Data Access module and cursors
- Turn your scripts into script tools for ArcGIS Pro
- Learn how to manage data on ArcGIS Online
- Query, edit, and append to feature layers and create symbology with renderers and colorizers
- Apply pandas and NumPy to raster and vector analysis
- Learn new tricks to manage data for entire cities or large companies
Who this book is for
This book is ideal for anyone looking to add Python to their ArcGIS Pro workflows, even if you have no prior experience with programming. This includes ArcGIS professionals, intermediate ArcGIS Pro users, ArcGIS Pro power users, students, and people who want to move from being a GIS Technician to GIS Analyst; GIS Analyst to GIS Programmer; or GIS Developer/Programmer to a GIS Architect. Basic familiarity with geospatial/GIS syntax, ArcGIS, and data science (pandas) is helpful, though not necessary.
Silas Toms is a long-time geospatial professional and author who has previously published ArcPy and ArcGIS and Mastering Geospatial Analysis with Python. His career highlights include developing the real-time common operational picture used at Super Bowl 50, building geospatial software for autonomous cars, designing computer vision for next-gen insurance, and developing mapping systems for Zillow. He now works at Volta Charging, predicting the future of electric vehicle adoption and electric charging infrastructure.
Bill Parker is a GIS Professional with over 15 years of GIS and Python experience. He previously worked at ICF as a GIS lead on large scale environmental projects, using ArcPy to automate GIS analyses and map production. His project highlights include being the GIS lead for the Caltrain Modernization EIR/S, California High Speed Rail Project San Jose to Merced, and San Francisco to San Jose EIR/S.
Table of Contents
- Introduction to Python for GIS
- Basics of ArcPy
- ArcGIS API for Python
- The Data Access Module and Cursors
- Publishing to ArcGIS Online
- ArcToolbox Script Tools
- Automated Map Production
- Pandas, Data Frames, and Vector Data
- Raster Analysis with Python
- Geospatial Data Processing with NumPy
- Case Study: ArcGIS Online Administration and Data Management
- Case Study: Advanced Map Automation
- Case Study: Predicting Crop Yields