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, all 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.

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.

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.

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 run 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 to the client.
  • Display tool history from map—Display 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. You can read more about every tool in Map Viewer documentation.

CategoryToolTypeDescription
Summarize dataAggregate PointsFeature analysisCalculates the total number of point features within designated areas and any specified statistics for the points within the areas.
Summarize dataJoin FeaturesFeature analysisAdds attributes from one layer to another based on specific spatial and attribute relationships.
Summarize dataSummarize Center and DispersionFeature analysisFinds the central feature, central tendency and standard derivational ellipse of a set of features.
Summarize dataSummarize NearbyFeature analysisFinds features that are within a specified distance of features in the input layer using a line distance or travel mode.
Summarize dataSummarize WithinFeature analysisCalculates statistics in areas where an input layer overlaps a boundary layer.
Summarize dataZonal StatisticsRaster analysisSummarizes the values of a raster within the zones of another dataset.
Summarize dataZonal Statistics as TableRaster analysisSummarizes the values of a raster within the zones of another dataset and reports the results as a table.
Find locationsCreate ViewshedFeature analysisUses the Esri Elevation Analysis service to identify areas that are visible from specified observer points.
Find locationsCreate WatershedsFeature analysisUses a hosted digital elevation model (DEM) to create water catchment areas.
Find locationsChoose Best FacilitiesFeature analysisFinds the set of facilities that will best serve demand from surrounding areas.
Find locationsFind Attributes and LocationFeature analysisCreates a new layer of the features or parts of features that meet specified spatial or attribute criteria.
Find locationsFind CentroidsFeature analysisCreates point features that represent the geometric center (centroid) of multipoint, line, and polygon features.
Find locationsFind Similar LocationsFeature analysisEvaluates 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.
Find locationsLocate regionsRaster analysisIdentifies the best regions in the input raster that meet specified size requirements and spatial constraints.
Find locationsTrace DownstreamFeature analysisUses a hosted digital elevation model (DEM) to trace downstream flow paths.
Enrich dataEnrich LayerFeature analysisSupplements point, line and polygon features with demographic and landscape data from the ArcGIS GeoEnrichment Service or a custom GeoEnrichment service.
Analyze patternsCalculate Composite IndexSpatial statisticsCombines multiple numeric variables to create a single index.
Analyze patternsCalculate DensityFeature analysisCreates 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.
Analyze patternsCalculate Density (Raster)Raster analysisCreates 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.
Analyze patternsFind Hot SpotsFeature analysisIdentifies statistically significant spatial clustering of high values (hot spots) and low values (cold spots) or data counts using the Getis-Ord Gi* statistic.
Analyze patternsFind OutliersFeature analysisIdentifies statistically significant hot spots, cold spots, and spatial outliers using the Anselin Local Moran's I statistic.
Analyze patternsFind Point ClustersFeature analysisIdentifies clusters of point features from surrounding noise based on their spatial distribution.
Analyze patternsInterpolate PointsFeature analysisPredicts values at new locations based on values measured at a set of point locations.
Analyze patternsInterpolate Points (Raster)Raster analysisTakes point data with values at each point and uses an interpolation method, that accounts for the error in estimating the underlying semivariogram through repeated simulations, to produce rasters of predicted and prediction error values.
Use proximityCalculate Travel CostFeature analysisMeasures the travel time or distance between pairs of points using either straight lines or network-based travel modes.
Use proximityCreate BuffersFeature analysisCreates an area that extends a specified distance around each input point, line, or polygon feature.
Use proximityDistance AccumulationRaster analysisCalculates 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.
Use proximityDistance AllocationRaster analysisCalculates 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.
Use proximityFind ClosestFeature analysisUses either a line distance or a travel mode to measure between input features and near features.
Use proximityGenerate Travel AreasFeature analysisUses Esri Service Areas to calculate the area that can be reached within a specified travel time or travel distance along a street network.
Use proximityOptimal Path as LineRaster analysisCalculates the path from destinations to the optimal source as a line.
Use proximityOptimal Path as RasterRaster analysisDetermines the optimal raster path from destinations to sources.
Use proximityOptimal Region ConnectionsRaster analysisCalculates the optimal connectivity network between two or more input regions.
Use proximityPlan RoutesFeature analysisDetermines how a fleet of vehicles can visit a set of stops in the least amount of time.
Manage dataConvert Feature to RasterRaster analysisConverts features to a raster.
Manage dataConvert Raster to FeatureRaster analysisConverts a raster to point, line, or polygon features.
Manage dataDissolve BoundariesFeature analysisFinds polygons that overlap or share a common boundary and merges them to form a single polygon.
Manage dataExtract DataFeature analysisPackages 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.
Manage dataGenerate TessellationsFeature analysisCreates a grid of cells with an area and shape that cover a specified extent.
Manage dataMerge LayersFeature analysisCopies features from two layers of the same feature type (point, line, or polygon) into a new layer.
Manage dataNibbleRaster analysisReplaces cells of a raster corresponding to a mask with the values of the nearest neighbor.
Manage dataOverlay LayersFeature analysisCombines two layers into a single layer using one of three methods: Intersect, Union, or Erase.
Manage dataSampleRaster analysisExtracts cell values from all of the input rasters at each input feature location.
Analyze terrainDerive Continuous FlowRaster analysisGenerates a raster of accumulated flow into each cell from an input surface raster with no prior sink or depression filling required.
Analyze terrainDerive Stream as LineRaster analysisGenerates stream line features from an input surface raster with no prior sink or depression filling required.
Analyze terrainDerive Stream as RasterRaster analysisGenerates a stream raster from an input surface raster with no prior sink or depression filling required.
Analyze terrainFillRaster analysisFills sinks and peaks in a surface raster to remove small imperfections in the data.
Analyze terrainFlow AccumulationRaster analysisGenerates a raster of accumulated flow into each cell from a flow direction raster.
Analyze terrainFlow DirectionRaster analysisCreates 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.
Analyze terrainFlow DistanceRaster analysisCalculates the horizontal or vertical downslope distance from each cell to the stream into which they flow.
Analyze terrainGeodesic ViewshedRaster analysisIdentifies the locations on a raster surface that are visible to the input observer locations.
Analyze terrainStream LinkRaster analysis
Analyze terrainSurface ParametersRaster analysisCalculates parameters of a raster surface such as aspect, slope, and curvature using geodesic methods.
Analyze terrainWatershedRaster analysisDetermines the contributing area above a set of cells in a raster.
Use deep learningClassify Objects Using Deep LearningRaster analysisRuns a deep learning model on an imagery layer to produce a feature layer or table in which each input object is classified.
Use deep learningClassify Pixels Using Deep LearningRaster analysisUses a deep learning model to classify the pixels in an imagery layer according to a defined list of labels indicating different classes.
Use deep learningDetect Change Using Deep LearningRaster analysisRuns a trained deep learning model to detect change between two raster layers.
Use deep learningDetect Objects Using Deep LearningRaster analysisUses a deep learning model to identify and locate objects in an imagery layer.
Use multidimensional analysisAggregate Multidimensional RasterRaster analysisGenerates a multidimensional imagery layer by combining existing multidimensional variables along a dimension.
Use multidimensional analysisFind Argument StatisticsRaster analysisExtracts the dimension value or band index at which a given statistic is attained for each pixel in a multidimensional or multiband imagery layer.
Use multidimensional analysisGenerate Multidimensional AnomalyRaster analysisComputes the anomaly for each slice in an existing multidimensional raster to generate an new multidimensional imagery layer.
Use multidimensional analysisGenerate Trend RasterRaster analysisEstimates the trend for each pixel along a dimension for one or more variables in a multidimensional imagery layer.
Use multidimensional analysisMultidimensional Principle ComponentsRaster analysisTransforms 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.
Use multidimensional analysisPredict Using Trend RasterRaster analysisComputes 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 typeData typeInputOutputNotes
BasicGPBooleanYesYesOutput displays as a string.
BasicGPDoubleYesYesOutput displays as a string.
BasicGPLongYesYesOutput displays as a string.
BasicGPStringYesYesOutput displays as a string.
BasicGPLinearUnitYesYesOutput displays as a string.
BasicGPFeatureRecordSetLayerYesYesOutput as a feature layer which can be used by other widgets.
BasicGPDateYesYesOutput displays as a string.
BasicGPRecordSetYesYesInput 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.
BasicGPDataFileYesYesOutput is a file link.
BasicFieldYesYesOutput displays as a string.
BasicGPRasterDataLayerYesYesOutput is a raster service URL.
BasicGPArealUnitYesYesOutput displays as a string.
GPMultiValuesGPBooleanYesOutput displays as a string.
GPMultiValuesGPDoubleYesYesOutput displays as a string.
GPMultiValuesGPLongYesYesOutput displays as a string.
GPMultiValuesGPStringYesYesOutput displays as a string.
GPMultiValuesGPLinearUnitYesYesOutput displays as a string.
GPMultiValuesGPDateYesYesOutput displays as a string.
GPMultiValuesGPDataFileYesOutput is a file link.
GPMultiValuesGPRecordSetYesYesOutput is an operable table object.
GPMultiValuesGPRasterDataLayerYesOutput is a raster service URL.
GPMultiValuesGPFeatureRecordSetLayerYesYesOutput is a feature layer which can be used by other widgets.
GPMultiValuesFieldYesYesOutput displays as a string.
GPMultiValuesGPMultiValue:GPArealUnitYesYesOutput displays as a string.
GPValueTableGPBoolean, GPString, GPLong, GPDouble, GPDate, GPLinearUnitYesYesOutput displays as a string.
GPValueTableGPDataFileYesYesOutput is a file link.
GPValueTableGPFeatureRecordSetLayerYesYesOutput displays as meta info.
GPValueTableGPRecordSetYesYesOutput displays as meta info.
GPValueTableGPRasterDataLayerYesYesOutput is a raster service URL.
GPCompositeOption of any basic typeYesYesOutputs 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:

Your browser is no longer supported. Please upgrade your browser for the best experience. See our browser deprecation post for more details.