Skip To Content
ArcGIS Developers
Dashboard

Summarize Center And Dispersion

Description

SummarizeCenterAndDispersion

The SummarizeCenterAndDispersion task finds central features and directional distributions. It can be used to answer questions such as the following:

  • Where is the center?
  • Which feature is the most accessible from all other features?
  • How dispersed, compact, or integrated are the features?
  • Are there directional trends?

For an example, suppose you have used the GeoAnalytics tool Find Point Clusters to identify groups of power outages across an entire year. The result will be time-enabled points representing cluster locations of power outages. However, you are interested in identifying the center of the power outages for visualization. To do this, use the tool Summarize Center And Dispersion with the cluster IDs as a group by field.

Note:
If the input layer has a geometry type of line or polygon, the centroids of each feature will be used in analysis.

Request parameters

ParameterDetails
inputLayer

(Required)

The point, line, or polygon features to be analyzed.

Syntax: As described in Feature input, this parameter can be one of the following:

  • A URL to a feature service layer with an optional filter to select specific features
  • A URL to a big data catalog service layer with an optional filter to select specific features
  • A feature collection

REST examples

//REST web example
{"url": "https://myportal.domain.com/server/rest/services/Hosted/hurricaneTrack/FeatureServer/0", "filter": "Month = 'September'"}

//REST scripting example
"inputLayer": {"url": "https://myportal.domain.com/server/rest/services/Hosted/hurricaneTrack/FeatureServer/0", "filter": "Month = 'September'"}

summaryType

(Required)

One or more methods with which to summarize the inputLayer.

Values: CentralFeature|MeanCenter|MedianCenter|Ellipse

REST examples

//REST web example
CentralFeature

//REST scripting example
"summaryType": "MedianCenter,MeanCenter,Ellipse"
ellipseSize

(Optional)

The number of standard deviations represented in the output ellipse layer. The default ellipse size is 1. Valid choices are 1, 2, or 3 standard deviations. This option is only used if Ellipse is chosen from the summaryType parameter.

REST examples

//REST web example
1

//REST scripting example
"ellipseSize": 2
weightField

(Optional)

A numeric field in the inputLayer to be used to weight locations according to their relative importance.

REST examples

//REST web example
Earnings

//REST scripting example
"weightField": "Population"
groupFields

(Optional)

One or more fields used to group features for summarization. The groupFields can be of integer, date, or string type.

REST examples

//REST web example
age_bracket,heights

//REST scripting example
"groupFields": "occupation"
outputName

(Required)

The task will create a feature service of the results. You define the name of the service.

REST examples

//REST web example
myOutput

//REST scripting example
"outputName": "myOutput"
context

(Optional)

The context parameter contains additional settings that affect task execution. For this task, there are four settings:

  • Extent (extent)—A bounding box that defines the analysis area. Only those features that intersect the bounding box will be analyzed.
  • Processing spatial reference (processSR)—The features will be projected into this coordinate system for analysis.
  • Output spatial reference (outSR)—The features will be projected into this coordinate system after the analysis to be saved. The output spatial reference for the spatiotemporal big data store is always WGS84.
  • Data store (dataStore)—Results will be saved to the specified data store. The default is the spatiotemporal big data store.

Syntax:
{
"extent" : {extent},
"processSR" : {spatial reference},
"outSR" : {spatial reference},
"dataStore":{data store}
}

f

The response format. The default response format is html.

Values: html | json

Example usage

Below is a sample request URL for SummarizeCenterAndDispersion:

https://webadaptor.domain.com/server/rest/services/System/GeoAnalyticsTools/GPServer/SummarizeCenterAndDispersion/submitJob?inputLayer={"url": "https://myportal.domain.com/server/rest/services/Hosted/hurricaneTrack/FeatureServer/0"}&summaryType=Ellipse&ellipseSize=2&outputName=myOutput&f=json

Response

When you submit a request, the service assigns a unique job ID for the transaction.

Syntax:
{
"jobId": "<unique job identifier>",
"jobStatus": "<job status>"
}

After the initial request is submitted, you can use jobId to periodically check the status of the job and messages as described in Checking job status. Once the job has successfully completed, use jobId to retrieve the results. To track the status, you can make a request of the following form:

https://<analysis url>/SummarizeCenterAndDispersion/jobs/<jobId>

Access results

When the status of the job request is esriJobSucceeded, you can access the results of the analysis by making a request of the following form:

https://<analysis-url>/SummarizeCenterAndDispersion/jobs/<jobId>/results/output?token=<your token>&f=json

ResponseDescription
centralFeatureLayer

The centralFeatureLayer is optional and will only be returned when a summaryType of CentralFeature is specified. The geometry and time type of the resulting centralFeatureLayer features will be the same as the inputLayer.

{"url": "https://<analysis-url>/SummarizeCenterAndDispersion/jobs/<jobId>/results/centralFeatureLayer"}

The result has properties for parameter name, data type, and value. The contents of value depend on the outputName parameter provided in the initial request. The value contains the URL of the feature service layer.

{
"paramName":"centralFeatureLayer", 
"dataType":"GPRecordSet",
"value":{"url":"<hosted featureservice layer url>"}
}

meanCenterLayer

The meanCenterLayer is optional and will only be returned when a summaryType of MeanCenter is specified. The meanCenterLayer will always be a point feature layer that represents the mean centers of the features from the inputLayer. If the inputLayer is time enabled, the result will contain the mean time value of the input data.

{"url": "https://<analysis-url>/SummarizeCenterAndDispersion/jobs/<jobId>/results/meanCenterLayer"}

The result has properties for parameter name, data type, and value. The contents of value depend on the outputName parameter provided in the initial request. The value contains the URL of the feature service layer.

{
"paramName":"meanCenterLayer", 
"dataType":"GPRecordSet",
"value":{"url":"<hosted featureservice layer url>"}
}

medianCenterLayer

The medianCenterLayer is optional and will only be returned when a summaryType of MedianCenter is specified. The medianCenterLayer will always be a point feature layer that represents the median centers of the features from the inputLayer. If the inputLayer is time enabled, the results will contain the median time value of the input data.

{"url": "https://<analysis-url>/SummarizeCenterAndDispersion/jobs/<jobId>/results/medianCenterLayer"}

The result has properties for parameter name, data type, and value. The contents of value depend on the outputName parameter provided in the initial request. The value contains the URL of the feature service layer.

{
"paramName":"medianCenterLayer", 
"dataType":"GPRecordSet",
"value":{"url":"<hosted featureservice layer url>"}
}

ellipseLayer

The ellipseLayer is optional and will only be returned when a summaryType of Ellipse is specified. The ellipseLayer will always be a polygon feature layer that represents standard deviational ellipses of the inputLayer. If the input layer is time enabled, the result will be time enabled with a time type of interval. The features included in calculating the start and end time values will depend on the ellipseSize parameter.

{"url": "https://<analysis-url>/SummarizeCenterAndDispersion/jobs/<jobId>/results/ellipseLayer"}

The result has properties for parameter name, data type, and value. The contents of value depend on the outputName parameter provided in the initial request. The value contains the URL of the feature service layer.

{
"paramName":"ellipseLayer", 
"dataType":"GPRecordSet",
"value":{"url":"<hosted featureservice layer url>"}
}