Analysis widget

The Analysis widget allows you to add spatial analysis tools, raster functions, and geoprocessing tools to an app. Spatial analysis tools perform fundamental GIS operations, such as creating viewsheds, creating buffers, converting rasters to features, and routing. Raster functions perform individual operations on raster data, such as converting to grayscale and classifying. Spatial analysis is a type of geoprocessing, but geoprocessing also includes tools that perform data management operations such as sorting, merging, and appending spatial data. You can add 64 built-in spatial analysis tools and more than 100 built-in raster functions, most of which are also available in Map Viewer. You can also add custom geoprocessing tools from your ArcGIS organization and tools published with ArcGIS Notebooks.

Examples

Use this widget to support app design requirements such as the following:

  • Many storm drains are connected to lakes, rivers, and oceans, making anything entering a drain a potential pollutant downstream. You want to provide a tool (Create Watersheds) that can help determine where the water entering a storm drain originated.
  • A development company plans to construct a new mixed-use development in a city. The development must be located within a quarter mile of shops, restaurants, and a light rail stop. You want to provide a tool (Create Buffers) that can determine if potential sites fit this criteria.
  • Foresters need to map tree disease transmission. You want to provide a tool (Find Hot Spots) that can identify regions with statistically significant amounts of diseased or healthy trees.

Usage notes

To use any of the built-in tools, the Analysis widget must be connected to a Map widget. However, you do not need to connect a Map widget if you only add custom tools that do not require layer input.

When you include this widget in an app, the run time widget panel has two tabs. The Tools tab lists any tools you add in the widget's settings. The History tab logs all tools the user runs and shows their statuses (for example, Running, Complete, Cancelled). From the history tab, you can click the options button next to each tool to view details, open the tool, or remove the tool. Click View details to view the results of that analysis. Click Open tool to view a tool's configuration window with the same parameters you previously used.

Web maps keep track of their analysis history, including successful and unsuccessful analyses run outside of Experience Builder (such as in Map Viewer). You can import a web map's analysis history in the widget's settings. Any tools imported from the map's analysis history appear at the top of the History tab and are unremovable at run time.

Note:

You can only import past spatial analyses that involved an Esri built-in tool. The widget currently does not support importing custom tool analyses from a web map's analysis history.

Parameters

After opening a tool, the user fills in the tool's parameters, which are a set of options or settings, such as the input layer to process and where to save the output dataset. Every tool has a unique set of parameters, which can be required or optional. Red circles indicate if a parameter is required. The information button next to each tool parameter offers more information about each parameter.

Note:

The widget currently does not support map service layers as input layers.

The widget currently does not support subtype group layers.

Tools have both input and output parameters. Every built-in tool requires the user to specify at least one input layer to be analyzed. There are two ways to specify input data:

  • Select layers from the connected Map widget. If the Map widget contains a web map, its layers are available to choose.
  • Browse for layers in My Content, ArcGIS Online, or an organization's portal.
    Note:

    You can only browse for input layers with built-in tools, not custom geoprocessing tools.

The output parameters are the name of the result layer and the name of the folder in My Content where the result is saved.

The optional parameters under Environment settings offer additional control over a tool's results. For example, you can specify an output coordinate system or limit an analysis to a specific geographic extent.

Every geoprocessing tool also has a unique set of parameters. A tool creator can choose to use over 100 parameter data types to supply inputs and return outputs, but not all are supported by Experience Builder. View a full list of ArcGIS Experience Builder-supported geoprocessing data types.

Credits

This widget's built-in spatial analysis tools consume credits. Every tool has an Estimate credits button, which you can use to see how many credits an analysis will consume before you run it, located above the Run and Back buttons. The button indicates whether an analysis does not consume credits.

Licensing requirements

To use the Analysis widget, the user must be signed in with an ArcGIS account that has privileges to perform analysis. If you include the Analysis widget in an app and share the app publicly, the widget prompts users to sign in to an account with privileges.

To use raster analysis tools and raster functions, you must have ArcGIS Image for ArcGIS Online. Your organization administrator can grant you the required privileges to perform analysis.

Learn more about licensing requirements for spatial analysis

Running custom geoprocessing tools does not require privileges.

Settings

The Analysis widget includes the following settings:

  • Select a Map widget—Select a Map widget. Click the import button to import spatial analysis tools from the connected web map's analysis history.
  • Add tools—Add tools to the widget panel.
    • Spatial analysis tool—Add one or more of the 64 built-in spatial analysis tools.
    • Raster function—Add one or more of the built-in raster functions.
    • Custom web tool—Add a custom geoprocessing tool. You can add geoprocessing tools as utility services.
  • Tools—Any tools you add appear here. You can hover over individual tools to reveal two buttons, one for opening the tool's configuration panel and one for removing the tool. You can click and drag to reorder tools.

    Built-in spatial analysis tools have the following settings:

    • Output—For every tool, you can choose to add result layers to the map automatically once an analysis is complete and allow the user to export results. If you turn on Allow export results, the Export button is available on the View details menu on the History tab.
    • Option—For every tool, if you import spatial analysis from the connected web map's analysis history and there is a past instance of the tool, the Preset tool from a map history setting appears. Turn on this setting to preset the tool with the parameters from that past analysis.

    Custom geoprocessing tools have the following settings:

    • Click the edit button to rename the tool
    • Input—All of the tool's input parameters are listed here. You can provide a run time label for each input parameter. Depending on the type of parameter (for example, GPFeatureRecordSetLayer, GPDate), you may be able to select input methods, provide default values, and more. View a full list of supported data types in the table below.
    • Output—All of the tool's output parameters are listed here. You can provide a run time label for each output parameter. For some types of parameters (for example, GPFeatureRecordSetLayer and GPString), additional settings appear. You may be able to allow end users to export results, add result layers to the connected map automatically, or define the symbology of the result layer. Check the Ignore this output box to remove that output from the results.
    • Option—Configure additional general settings for the tool.
      • Show tool help link—Provide a link to help documentation for your custom tool. By default, the widget reads the tool's service htm.
      • Message level—Geoprocessing tools can return many different kinds of error, warning, and status messages. Choose which kinds of messages you want the tool to give the user.
        • None—The tool returns no geoprocessing messages. The tool only indicates whether the analysis was successful and shows the amount of time taken to execute the tool.
        • Error—The tool only returns error messages to the client.
        • Warning—The tool returns all error and warning messages to the client. This is the default.
        • Info—The tool returns all messages related to the tool execution to the client.
        Note:

        Custom geoprocessing tools always display messages that indicate whether the analysis was successful and that show the amount of time taken to execute the tool. This setting lets you show additional messages to the user.

  • Display tool history from mapDisplay tools from the map's analysis history in the History tab at run time.

Spatial analysis tools

The Analysis widget's built-in spatial analysis tools include feature analysis tools and raster analysis tools.

  • Feature analysis is performed on vector data, which is coordinate-based data that represents geographic features using points, lines, and polygons. You can use feature analysis tools to summarize features based on geographic location, measure distances around or between features, and quantify spatial patterns.
  • Raster analysis is performed on raster data, which consists of a matrix of cells (or pixels) organized into rows and columns (or a grid) where each cell contains a value representing information, such as temperature or elevation. Rasters may be digital aerial photographs, satellite imagery, digital pictures, or scanned maps. You can identify raster analysis tools by the raster tool icon Raster tool.

The following table describes the built-in analysis tools that the widget currently supports. Click a tool name to view its documentation.

CategoryToolTypeDescription

Summarize data

Aggregate Points

Feature analysis

Calculates the total number of point features within designated areas and any specified statistics for the points within the areas.

Join Features

Feature analysis

Adds attributes from one layer to another based on specific spatial and attribute relationships.

Summarize Center and Dispersion

Feature analysis

Finds the central feature, central tendency and standard derivational ellipse of a set of features.

Summarize Nearby

Feature analysis

Finds features that are within a specified distance of features in the input layer using a line distance or travel mode.

Summarize Within

Feature analysis

Calculates statistics in areas where an input layer overlaps a boundary layer.

Zonal Statistics

Raster analysis

Summarizes the values of a raster within the zones of another dataset.

Zonal Statistics as Table

Raster analysis

Summarizes the values of a raster within the zones of another dataset and reports the results as a table.

Find locations

Create Viewshed

Feature analysis

Uses the Esri Elevation Analysis service to identify areas that are visible from specified observer points.

Create Watersheds

Feature analysis

Uses a hosted digital elevation model (DEM) to create water catchment areas.

Choose Best Facilities

Feature analysis

Finds the set of facilities that will best serve demand from surrounding areas.

Find Attributes and Location

Feature analysis

Creates a new layer of the features or parts of features that meet specified spatial or attribute criteria.

Find Centroids

Feature analysis

Creates point features that represent the geometric center (centroid) of multipoint, line, and polygon features.

Find Similar Locations

Feature analysis

Evaluates the similarity between candidate locations and a reference location based on a set of criteria and ranks the candidate locations from most to least similar.

Locate regions

Raster analysis

Identifies the best regions in the input raster that meet specified size requirements and spatial constraints.

Trace Downstream

Feature analysis

Uses a hosted digital elevation model (DEM) to trace downstream flow paths.

Enrich data

Enrich Layer

Feature analysis

Supplements point, line, and polygon features with demographic and landscape data from the ArcGIS GeoEnrichment Service or a custom GeoEnrichment service.

Analyze patterns

Calculate Composite Index

Spatial statistics

Combines multiple numeric variables to create a single index.

Calculate Density

Feature analysis

Creates a density map (polygon) from point or line features by spreading known quantities of a phenomenon (represented as attributes or the points or lines) across the map.

Calculate Density (Raster)

Raster analysis

Creates a density raster map from point or line features by spreading known quantities of a phenomenon (represented as attributes of the points or lines) across the map.

Find Hot Spots

Feature analysis

Identifies statistically significant spatial clustering of high values (hot spots) and low values (cold spots) or data counts using the Getis-Ord Gi* statistic.

Find Outliers

Feature analysis

Identifies statistically significant hot spots, cold spots, and spatial outliers using the Anselin Local Moran's I statistic.

Find Point Clusters

Feature analysis

Identifies clusters of point features from surrounding noise based on their spatial distribution.

Interpolate Points

Feature analysis

Predicts values at new locations based on values measured at a set of point locations.

Interpolate Points (Raster)

Raster analysis

Takes point data with values at each point and uses an interpolation method, which accounts for the error in estimating the underlying semivariogram through repeated simulations, to produce rasters of predicted and prediction error values.

Use proximity

Calculate Travel Cost

Feature analysis

Measures the travel time or distance between pairs of points using either straight lines or network-based travel modes.

Create Buffers

Feature analysis

Creates an area that extends a specified distance around each input point, line, or polygon feature.

Distance Accumulation

Raster analysis

Calculates accumulated distance from each cell to input sources, allowing for straight-line distance, cost distance, and true surface distance, as well as vertical and horizontal cost factors.

Distance Allocation

Raster analysis

Calculates allocation for each cell to input sources based on straight-line distance, cost distance, and true surface distance, as well as vertical and horizontal cost factors.

Find Closest

Feature analysis

Uses either a line distance or a travel mode to measure between input features and near features.

Generate Travel Areas

Feature analysis

Uses Esri Service Areas to calculate the area that can be reached within a specified travel time or travel distance along a street network.

Optimal Path as Line

Raster analysis

Calculates the path from destinations to the optimal source as a line.

Optimal Path as Raster

Raster analysis

Determines the optimal raster path from destinations to sources.

Optimal Region Connections

Raster analysis

Calculates the optimal connectivity network between two or more input regions.

Plan Routes

Feature analysis

Determines how a fleet of vehicles can visit a set of stops in the least amount of time.

Manage data

Convert Feature to Raster

Raster analysis

Converts features to a raster.

Convert Raster to Feature

Raster analysis

Converts a raster to point, line, or polygon features.

Dissolve Boundaries

Feature analysis

Finds polygons that overlap or share a common boundary and merges them to form a single polygon.

Extract Data

Feature analysis

Packages layers into datasets that can be used in ArcGIS Pro, Microsoft Excel, and other products. The tool creates an item in your content containing the data from the layers. You can then download the data from the item.

Generate Tessellations

Feature analysis

Creates a grid of cells with an area and shape that cover a specified extent.

Merge Layers

Feature analysis

Copies features from two layers of the same feature type (point, line, or polygon) into a new layer.

Nibble

Raster analysis

Replaces cells of a raster corresponding to a mask with the values of the nearest neighbor.

Overlay Layers

Feature analysis

Combines two layers into a single layer using one of three methods: Intersect, Union, or Erase.

Sample

Raster analysis

Extracts cell values from all of the input rasters at each input feature location.

Analyze terrain

Derive Continuous Flow

Raster analysis

Generates a raster of accumulated flow into each cell from an input surface raster with no prior sink or depression filling required.

Derive Stream as Line

Raster analysis

Generates stream line features from an input surface raster with no prior sink or depression filling required.

Derive Stream as Raster

Raster analysis

Generates a stream raster from an input surface raster with no prior sink or depression filling required.

Fill

Raster analysis

Fills sinks and peaks in a surface raster to remove small imperfections in the data.

Flow Accumulation

Raster analysis

Generates a raster of accumulated flow into each cell from a flow direction raster.

Flow Direction

Raster analysis

Creates a raster of flow direction from each cell to its downslope neighbor, or neighbors, using the D, Multiple Flow Direction (MFD), or D-Infinity (DINF) method.

Flow Distance

Raster analysis

Calculates the horizontal or vertical downslope distance from each cell to the stream into which they flow.

Geodesic Viewshed

Raster analysis

Identifies the locations on a raster surface that are visible to the input observer locations.

Stream Link

Raster analysis

Surface Parameters

Raster analysis

Calculates parameters of a raster surface such as aspect, slope, and curvature using geodesic methods.

Watershed

Raster analysis

Determines the contributing area above a set of cells in a raster.

Use deep learning

Classify Objects Using Deep Learning

Raster analysis

Runs a deep learning model on an imagery layer to produce a feature layer or table in which each input object is classified.

Classify Pixels Using Deep Learning

Raster analysis

Uses a deep learning model to classify the pixels in an imagery layer according to a defined list of labels indicating different classes.

Detect Change Using Deep Learning

Raster analysis

Runs a trained deep learning model to detect change between two raster layers.

Detect Objects Using Deep Learning

Raster analysis

Uses a deep learning model to identify and locate objects in an imagery layer.

Use multidimensional analysis

Aggregate Multidimensional Raster

Raster analysis

Generates a multidimensional imagery layer by combining existing multidimensional variables along a dimension.

Find Argument Statistics

Raster analysis

Extracts the dimension value or band index at which a given statistic is attained for each pixel in a multidimensional or multiband imagery layer.

Generate Multidimensional Anomaly

Raster analysis

Computes the anomaly for each slice in an existing multidimensional raster to generate an new multidimensional imagery layer.

Generate Trend Raster

Raster analysis

Estimates the trend for each pixel along a dimension for one or more variables in a multidimensional imagery layer.

Multidimensional Principle Components

Raster analysis

Transforms the multidimensional imagery layers into a reduced number of components that account for the variance of the data, so that spatial and temporal patterns can be readily identified.

Predict Using Trend Raster

Raster analysis

Computes a forecasted multidimensional imagery layer using the output trend imagery layer created by the Generate Trend Raster tool.

Raster functions

Raster functions are operations that perform imagery- and raster-related tasks. You can identify them by the raster function icon Raster function. Users can preview the results of raster functions at run time.

The Analysis widget supports more than 100 raster functions. You can read more about every function in Map Viewer documentation.

Geoprocessing data types

Every geoprocessing tool has a unique set of parameters, which are the set of options or settings that the user configures at run time, such as the input data to process and output dataset. Geoprocessing tools can work with many different types of data as inputs and outputs. However, Experience Builder currently only supports some data types. The following table lists the types of data that the Analysis widget currently supports as input and output parameters.

Data typeInputOutputNotes

Basic

GPBoolean

Yes

Yes

Output displays as a string.

GPDouble

Yes

Yes

Output displays as a string.

GPLong

Yes

Yes

Output displays as a string.

GPString

Yes

Yes

Output displays as a string.

GPLinearUnit

Yes

Yes

Output displays as a string.

GPFeatureRecordSetLayer

Yes

Yes

Output is a feature layer which can be used by other widgets.

GPDate

Yes

Yes

Output displays as a string.

GPRecordSet

Yes

Yes

Input can only be from a layer selection, not a .json or .txt file. Output is a table object which can be displayed in a Table widget.

GPDataFile

Yes

Yes

Output is a file link.

Field

Yes

Yes

Output displays as a string.

GPRasterDataLayer

Yes

Yes

Output is a raster service URL.

GPArealUnit

Yes

Yes

Output displays as a string.

GPMultiValues

GPBoolean

Yes

Output displays as a string.

GPDouble

Yes

Yes

Output displays as a string.

GPLong

Yes

Yes

Output displays as a string.

GPString

Yes

Yes

Output displays as a string.

GPLinearUnit

Yes

Yes

Output displays as a string.

GPDate

Yes

Yes

Output displays as a string.

GPDataFile

Yes

Output is a file link.

GPRecordSet

Yes

Yes

Output is an operable table object.

GPRasterDataLayer

Yes

Output is a raster service URL.

GPFeatureRecordSetLayer

Yes

Yes

Output is a feature layer which can be used by other widgets.

Field

Yes

Yes

Output displays as a string.

GPMultiValue:GPArealUnit

Yes

Yes

Output displays as a string.

GPValueTable

GPBoolean, GPString, GPLong, GPDouble, GPDate, GPLinearUnit

Yes

Yes

Output displays as a string.

GPDataFile

Yes

Yes

Output is a file link.

GPFeatureRecordSetLayer

Yes

Yes

Output displays as meta info.

GPRecordSet

Yes

Yes

Output displays as meta info.

GPRasterDataLayer

Yes

Yes

Output is a raster service URL.

GPComposite

Option of any basic type

Yes

Yes

Outputs are the same formats as basic data types.

Interaction options

The Analysis widget supports data actions, which you can configure on the Action tab of the widget's settings.

Data actions allow the user to perform data processing tasks, such as exporting results, adding results to a map, and viewing results in a table. For example, if you include an Analysis widget and Table widget in an app and turn on the View in table action in the Analysis widget's settings, at run time the user can click View in table to view the results of an analysis in the Table widget.

The Analysis widget is the target of the Set as Analysis input data action, which you can configure on the Action tab of other widgets' settings. You can use this data action to select a feature with another widget and make that feature the input for one of the built-in feature analysis tools or a custom geoprocessing tool. This data action supports features from feature layers, dynamic imagery layers, and tiled imagery layers.

The following widgets support the Set as Analysis input data action: