Network Analyst: Automating Workflows with …...• Include the network analysis workflow as part...

Post on 08-Jul-2020

2 views 0 download

Transcript of Network Analyst: Automating Workflows with …...• Include the network analysis workflow as part...

Network Analyst:

Automating Workflows with

Geoprocessing

Melinda Morang

Patrick Stevens

•Who are we?

-Network Analyst Product Engineers

Network Analyst: Automating Workflows with Geoprocessing

• Who are you?

Network Analyst: Automating Workflows with Geoprocessing

• Who are you?

- Are you current Network Analyst users?

Network Analyst: Automating Workflows with Geoprocessing

• Who are you?

- Are you current Network Analyst users?

- Are you current geoprocessing users?

Network Analyst: Automating Workflows with Geoprocessing

• Who are you?

- Are you current Network Analyst users?

- Are you current geoprocessing users?

- Have you made geoprocessing models?

Network Analyst: Automating Workflows with Geoprocessing

• Who are you?

- Are you current Network Analyst users?

- Are you current geoprocessing users?

- Have you made geoprocessing models?

- Have you made geoprocessing Python scripts?

Network Analyst: Automating Workflows with Geoprocessing

• Why should you use geoprocessing?

Network Analyst: Automating Workflows with Geoprocessing

• Why should you use geoprocessing?

- Automate repetitive tasks

Network Analyst: Automating Workflows with Geoprocessing

• Why should you use geoprocessing?

- Automate repetitive tasks

- Reduce mistakes

Network Analyst: Automating Workflows with Geoprocessing

• Why should you use geoprocessing?

- Automate repetitive tasks

- Reduce mistakes

- Share analysis capabilities

Network Analyst: Automating Workflows with Geoprocessing

• Why should you use geoprocessing?

- Automate repetitive tasks

- Reduce mistakes

- Share analysis capabilities

- Increase efficiency

Network Analyst: Automating Workflows with Geoprocessing

• Why should you use geoprocessing?

- Automate repetitive tasks

- Reduce mistakes

- Share analysis capabilities

- Increase efficiency

- Expand capabilities of ArcGIS

Network Analyst: Automating Workflows with Geoprocessing

Network Analyst: Automating Workflows with Geoprocessing

Topics to be covered

ArcGIS Network Analyst extension concepts

Network Analyst: Automating Workflows with Geoprocessing

Topics to be covered

ArcGIS Network Analyst extension concepts

Geoprocessing and network analysis

Network Analyst: Automating Workflows with Geoprocessing

Topics to be covered

ArcGIS Network Analyst extension concepts

Geoprocessing and network analysis

ModelBuilder: Models and model tools

Network Analyst: Automating Workflows with Geoprocessing

Topics to be covered

ArcGIS Network Analyst extension concepts

Geoprocessing and network analysis

ModelBuilder: Models and model tools

Python: Scripts and script tools

Network Analyst: Automating Workflows with Geoprocessing

Topics to be covered

ArcGIS Network Analyst extension concepts

Geoprocessing and network analysis

ModelBuilder: Models and model tools

Python: Scripts and script tools

Support and resources

Network Analyst: Automating Workflows with Geoprocessing

Topics to be covered

ArcGIS Network Analyst extension concepts

Geoprocessing and network analysis

ModelBuilder: Models and model tools

Python: Scripts and script tools

Support and resources

Network Analyst: Automating Workflows with Geoprocessing

Topics to be covered

ArcGIS Network Analyst Extensionsolvers

Service Area

Create drive-time areas

Location-Allocation

Choose best facilities

Vehicle Routing

Problem

Plan routes

Route

Directions

Closest Facility

Find nearest

Origin-Destination

Cost Matrix

Generate origin destination

cost matrix

Network Analyst: Automating Workflows with Geoprocessing

Network dataset

Network Analyst: Automating Workflows with Geoprocessing

Network Analyst: Automating Workflows with Geoprocessing

Network Analyst layer

Network Analyst layer

Network Analyst: Automating Workflows with Geoprocessing

• One layer type for each solver

Network Analyst layer

• One layer type for each solver

• Holds the analysis

- Analysis properties

- Inputs

- Outputs

Network Analyst: Automating Workflows with Geoprocessing

Performing an analysis manually

Network Analyst

workflow

Network Analyst: Automating Workflows with Geoprocessing

Demo

• Steps for network analysis:

-Make an analysis layer

-Add locations

-Solve

-Work with results

Network Analyst: Automating Workflows with Geoprocessing

TakeawaysDemo: Network Analyst Workflow

ArcGIS Network Analyst extension concepts

Geoprocessing and network analysis

ModelBuilder: Models and model tools

Python: Scripts and script tools

Support and resources

Network Analyst: Automating Workflows with Geoprocessing

Topics to be covered

ArcGIS Network Analyst extension concepts

Geoprocessing and network analysis

ModelBuilder: Models and model tools

Python: Scripts and script tools

Support and resources

Network Analyst: Automating Workflows with Geoprocessing

Topics to be covered

Network Analyst: Automating Workflows with Geoprocessing

What is

Geoprocessing?

ArcGIS Help:

The geoprocessing framework

Network Analyst: Automating Workflows with Geoprocessing

Storage & Management

What is Geoprocessing?

Network Analyst: Automating Workflows with Geoprocessing

Storage & ManagementVisualization

What is Geoprocessing?

Network Analyst: Automating Workflows with Geoprocessing

Storage & ManagementVisualization

Computation

What is Geoprocessing?

Network Analyst: Automating Workflows with Geoprocessing

Computation

=Geoprocessing

•Automating workflows

•Modeling & Analysis

What is Geoprocessing?

Network Analyst: Automating Workflows with Geoprocessing

Geoprocessing tool types

Network Analyst: Automating Workflows with Geoprocessing

System tools Geoprocessing tool types

Network Analyst: Automating Workflows with Geoprocessing

System tools

Model tools

Geoprocessing tool types

Network Analyst: Automating Workflows with Geoprocessing

System tools

Script tools

Model tools

Geoprocessing tool types

Network Analyst: Automating Workflows with Geoprocessing

Model

Single tool

Chain tools

Using Geoprocessing tools

Python window

Tool dialog

Script

Network Analyst: Automating Workflows with Geoprocessing

Network Analyst

system tools

Network Analyst: Automating Workflows with Geoprocessing

• Performing Network Analysis

Network Analyst

system tools

Network Analyst: Automating Workflows with Geoprocessing

• Performing Network Analysis

• Building networks

Network Analyst

system tools

Network Analyst: Automating Workflows with Geoprocessing

• Performing Network Analysis

• Building networks

• Managing turns

Network Analyst

system tools

Network Analyst: Automating Workflows with Geoprocessing

Using

Geoprocessing

• Performing Network Analysis

• Building networks

• Managing turns

Network Analyst: Automating Workflows with Geoprocessing

Using

Geoprocessing

• Performing Network Analysis

• Building networks

• Managing turns

• Publishing services

ArcGIS Network Analyst extension concepts

Geoprocessing and network analysis

ModelBuilder: Models and model tools

Python: Scripts and script tools

Support and resources

Network Analyst: Automating Workflows with Geoprocessing

Topics to be covered

ArcGIS Network Analyst extension concepts

Geoprocessing and network analysis

ModelBuilder: Models and model tools

Python: Scripts and script tools

Support and resources

Network Analyst: Automating Workflows with Geoprocessing

Topics to be covered

Building

Geoprocessing

Models

Network Analyst: Automating Workflows with Geoprocessing

ArcGIS Help:

What is ModelBuilder?

Network Analyst: Automating Workflows with Geoprocessing

Geoprocessing

Models

Network Analyst: Automating Workflows with Geoprocessing

Geoprocessing

Models

• Author using Model Builder

Network Analyst: Automating Workflows with Geoprocessing

Geoprocessing

Models

• Chain tools to perform a

workflow

Network Analyst: Automating Workflows with Geoprocessing

Geoprocessing

Models

• Use models like ArcToolbox

tools

Network Analyst: Automating Workflows with Geoprocessing

Geoprocessing

Models

• Use models within other

models

Network Analyst: Automating Workflows with Geoprocessing

Geoprocessing

Models

• Apply all Model Builder

techniques to network analysis

models

Performing a network analysis

in Model Builder

Sharing a model as a tool

Automating

workflows with

geoprocessing

models

Network Analyst: Automating Workflows with Geoprocessing

Demo

• Automate workflows with Model Builder

• Make inputs and outputs model parameters

• Run your model as a tool

• Share models and projects

Network Analyst: Automating Workflows with Geoprocessing

TakeawaysDemo: Automating Workflows with Geoprocessing Models

• When running models as tools…

- The output network analysis layer should be a model parameter- This will add the layer to the Table of Contents

Network Analyst: Automating Workflows with Geoprocessing

Visualizing analysis results in ArcMap

• Use your analysis result as an input to another tool

- The Select Data tool accesses individual sublayers

Network Analyst: Automating Workflows with Geoprocessing

Post-processing your analysis

• Use your analysis result as an input to another tool

- The Select Data tool accesses individual sublayers

Network Analyst: Automating Workflows with Geoprocessing

Post-processing your analysis

Automating

workflows with

geoprocessing

models

Network Analyst: Automating Workflows with Geoprocessing

Demo

Working with inputs and outputs

• Include the network analysis workflow as part of

a larger workflow

• Use the Select Data tool to access sublayers

• Work with external data like CSV files

Network Analyst: Automating Workflows with Geoprocessing

TakeawaysDemo: Automating Workflows with Geoprocessing Models

ArcGIS Network Analyst extension concepts

Geoprocessing and network analysis

ModelBuilder: Models and model tools

Python: Scripts and script tools

Support and resources

Network Analyst: Automating Workflows with Geoprocessing

Topics to be covered

ArcGIS Network Analyst extension concepts

Geoprocessing and network analysis

ModelBuilder: Models and model tools

Python: Scripts and script tools

Support and resources

Network Analyst: Automating Workflows with Geoprocessing

Topics to be covered

Network Analyst: Automating Workflows with Geoprocessing

Writing Python

Scripts

ArcGIS Help:

What is Python?

Network Analyst: Automating Workflows with Geoprocessing

Python scripts

Network Analyst: Automating Workflows with Geoprocessing

Python scripts

• Conditional logic

Network Analyst: Automating Workflows with Geoprocessing

Python scripts

• Conditional logic

• Loops

Network Analyst: Automating Workflows with Geoprocessing

Python scripts

• Conditional logic

• Loops

• Cursors, creating geometry

Network Analyst: Automating Workflows with Geoprocessing

Python scripts

• Conditional logic

• Loops

• Cursors, creating geometry

• Built-in and third party modules

Network Analyst: Automating Workflows with Geoprocessing

Python scripts

• ArcPy site package

Network Analyst: Automating Workflows with Geoprocessing

Python scripts

• ArcPy site package

- Network Analyst module

Network Analyst: Automating Workflows with Geoprocessing

Python scripts

• ArcPy site package

- Network Analyst module

- Other geoprocessing tools

Network Analyst: Automating Workflows with Geoprocessing

Python scripts

• ArcPy site package

- Network Analyst module

- Other geoprocessing tools

- Other useful functions and

classes

- Describe

Network Analyst: Automating Workflows with Geoprocessing

Python scripts

• Simplify access to Network

Analyst functionality from

Python

arcpy.na

Network Analyst: Automating Workflows with Geoprocessing

Python scripts

• Simplify access to Network

Analyst functionality from

Python

• Edit the analysis properties of

network analysis layers

- No need to re-create layers

- Speed up execution

- Simplify script logic

arcpy.na

Network Analyst: Automating Workflows with Geoprocessing

Python Script: Basic Building Blocks

Network Analyst: Automating Workflows with Geoprocessing

Import the arcpy site package

Network Analyst: Automating Workflows with Geoprocessing

Check out Network Analyst Extension license

Network Analyst: Automating Workflows with Geoprocessing

Create/edit a Network Analysis layer

Network Analyst: Automating Workflows with Geoprocessing

Create/edit a Network Analysis layer

Network Analyst: Automating Workflows with Geoprocessing

Add locations to analysis classes

Network Analyst: Automating Workflows with Geoprocessing

Run the analysis

Network Analyst: Automating Workflows with Geoprocessing

Use the results

Network Analyst: Automating Workflows with Geoprocessing

Edit the properties on an existing layer

Network Analyst: Automating Workflows with Geoprocessing

Edit the properties on an existing layer

Network Analyst: Automating Workflows with Geoprocessing

Edit the properties on an existing layer

Network Analyst: Automating Workflows with Geoprocessing

Access sublayer with ListLayers

Network Analyst: Automating Workflows with Geoprocessing

Access sublayer with ListLayers

Network Analyst: Automating Workflows with Geoprocessing

Access sublayer with ListLayers

• Use sublayers as input to other tools (CopyFeatures, Join, Buffer, etc.).

Network Analyst: Automating Workflows with Geoprocessing

Access sublayer with ListLayers

• Use sublayers as input to other tools (CopyFeatures, Join, Buffer, etc.).

• Use a SearchCursor to access the rows within a sublayer.

Network Analyst: Automating Workflows with Geoprocessing

Access sublayer with ListLayers

Network Analyst: Automating Workflows with Geoprocessing

Field mapping

Network Analyst: Automating Workflows with Geoprocessing

Field mapping

Network Analyst: Automating Workflows with Geoprocessing

Field mapping

Network Analyst: Automating Workflows with Geoprocessing

Set the output workspace

Python in ArcGIS Pro vs. ArcMap

Network Analyst: Automating Workflows with Geoprocessing

• Pro: python 3.4

• ArcMap: python 2.7

Python in ArcGIS Pro vs. ArcMap

Network Analyst: Automating Workflows with Geoprocessing

• Pro: python 3.4

• ArcMap: python 2.7

• General migration help

- http://pro.arcgis.com/en/pro-app/arcpy/get-started/python-

migration-for-arcgis-pro.htm

Python in ArcGIS Pro vs. ArcMap

Network Analyst: Automating Workflows with Geoprocessing

• Network analysis migration help

- http://pro.arcgis.com/en/pro-app/arcpy/network-

analyst/migratingfrom10xarcpynetworkanalyst.htm

Python in ArcGIS Pro vs. ArcMap

Network Analyst: Automating Workflows with Geoprocessing

• Network analysis migration help

- http://pro.arcgis.com/en/pro-app/arcpy/network-

analyst/migratingfrom10xarcpynetworkanalyst.htm

• Unsupported and deprecated tools

• Changes for working with layer object

Python in ArcGIS Pro vs. ArcMap

Network Analyst: Automating Workflows with Geoprocessing

• Setting up a development environment (IDE)

- http://pro.arcgis.com/en/pro-app/arcpy/get-started/installing-

python-for-arcgis-pro.htm

Python in ArcGIS Pro vs. ArcMap

Network Analyst: Automating Workflows with Geoprocessing

Performing a network analysis

with a python script

Automating

workflows with

python scripts

Demo

• Run any geoprocessing workflow in stand-alone python

• Find Code samples in the tool help

• Run simple python commands in the python window

Network Analyst: Automating Workflows with Geoprocessing

TakeawaysDemo: Automating Workflows with Python Scripts

Network Analyst: Automating Workflows with Geoprocessing

ArcGIS Help:

What is a script tool?

Building Script

Tools

• Work with your scripts through a user interface

Network Analyst: Automating Workflows with Geoprocessing

Script tools

• Work with your scripts through a user interface

• Use Script tools like any other tool within ArcToolbox

- Use script tools in models and vice versa

Network Analyst: Automating Workflows with Geoprocessing

Script tools

• If a network analysis layer is the output use arcpy.SetParameterAsText(…)

Network Analyst: Automating Workflows with Geoprocessing

Add outputs from script tool to ArcMap

• If a network analysis layer is the output use arcpy.SetParameterAsText(…)

Network Analyst: Automating Workflows with Geoprocessing

Add outputs from script tool to ArcMap

Create a script tool to provide

a UI for a Python script

Use tool validation to

customize the UI

Creating a

script tool

Network Analyst: Automating Workflows with Geoprocessing

Demo

• Provide a user interface for python scripts by making a

script tool

• Use derived output and arcpy.SetParameterAsText() to add results to the map

• Use tool validation to customize your script tool’s user

interface

Network Analyst: Automating Workflows with Geoprocessing

TakeawaysDemo: Creating a Script Tool

ArcGIS Network Analyst extension concepts

Geoprocessing and network analysis

ModelBuilder: Models and model tools

Python: Scripts and script tools

Support and resources

Network Analyst: Automating Workflows with Geoprocessing

Topics to be covered

ArcGIS Network Analyst extension concepts

Geoprocessing and network analysis

ModelBuilder: Models and model tools

Python: Scripts and script tools

Support and resources

Network Analyst: Automating Workflows with Geoprocessing

Topics to be covered

Summary

Network Analyst: Automating Workflows with Geoprocessing

Summary

Network Analyst: Automating Workflows with Geoprocessing

• Use the geoprocessing

framework for network analyses

- Network Analyst Tools

- Models and Model tools

- Script and Script tools

Summary

Network Analyst: Automating Workflows with Geoprocessing

• Automate workflows

Summary

Network Analyst: Automating Workflows with Geoprocessing

• Incorporate network analysis in

larger process

Network Analyst: Automating Workflows with Geoprocessing

Resources

Network Analyst: Automating Workflows with Geoprocessing

Resources• Network Analyst tutorials

- ArcMap

- ArcGIS Pro

Network Analyst: Automating Workflows with Geoprocessing

Resources• ArcGIS Network Analyst Extension Discussion Forum

Network Analyst: Automating Workflows with Geoprocessing

Resources• Python for ArcGIS resource center

Employee of the Year Award

Melinda Morang

Esri presents the

to

Signature of Manager

Please Take Our Survey on the Esri Events App!

Select the session you attended

Scroll down to find the survey

Complete Answersand Select “Submit”

Download the Esri Events app and find

your event

Network Analyst: Automating Workflows with Geoprocessing