Available with Business Analyst license.
Summary
Creates trade areas around stores based on the number of customers or volume attribute of each customer.
Illustration
Usage
The spatial reference of the output feature class will be the same as the store layer.
The store layer and customer layer must both be point features.
In most cases, the store layer area input feature layer will be a Business Analyst store layer.
Valid numeric values must be used when defining customer-derived trade area values. Negative values cannot be used.
Selecting ALL in the Sites To Use parameter will create a trade area for each point feature in the store layer.
Donut rings create output polygons that are bands.
Using the centroid of the store's customers as a center for a trade area can be helpful when the store is located outside the customer area and you want to see customer trade areas that show customer concentration around their center point.
In ArcMap, trade areas will only be created for features that are within the active study area or analysis extent.
Syntax
arcpy.ba.CustomerDerivedTA(AnalysisType, InputFeatureLayer, IDField, All_Or_Single_Or_Selected, CustomerLayer, LinkField, CustomerWeightField, RingsCollection, OutputFeatureClass, {ByID_Or_ByName}, {Single_Site}, {UseSelectedFeatures}, {ExcludeOutlyingCustomers}, {CutoffDistance}, {MeasureUnits}, {Donut}, {UseCentroids})
Parameter | Explanation | Data Type |
AnalysisType | The type of customer-derived trade area to be generated.
| String |
InputFeatureLayer | The input feature class containing center points for the trade areas. In most cases, this will be a Business Analyst store layer. | Feature Layer |
IDField | Unique ID field in the trade area center (store) layer. | String |
All_Or_Single_Or_Selected | The points in the input feature layer used to create trade areas.
| String |
CustomerLayer | The input feature class containing the points and attributes needed to generate the trade areas. In most cases, this will be a Business Analyst customer layer. | Feature Layer |
LinkField | The ID that identifies the store associated with each customer. | Field |
CustomerWeightField | The field used to calculate the trade areas. This is based on either the number of customers (count) or the calculated weighted value assigned to each customer. | Field |
RingsCollection [RingsCollection,...] | The percentage of customers (or weights) used to create customer-derived trade areas around the stores. For example, you can create customer-derived trade areas that represent 40, 60, or 80 percent of your customers for each store. | Double |
OutputFeatureClass | The feature class that will contain the customer-derived trade area features. | Feature Class |
ByID_Or_ByName (Optional) | Field used to select a single point.
| String |
Single_Site (Optional) | ID or name of store to be used as the single point. | String |
UseSelectedFeatures (Optional) | The store features used to generate customer-derived trade areas.
| Boolean |
ExcludeOutlyingCustomers (Optional) | Identifes the customers used in the trade area calculation beyond a specified distance.
| Boolean |
CutoffDistance (Optional) | The numeric distance used to determine how far to include customers from each store in the percentage calculations for each trade area. | Double |
MeasureUnits (Optional) | The units used with the distance values. By default, the units defined in the Business Analyst preferences will be selected.
| String |
Donut (Optional) | Creates nonoverlapping concentric rings, or donut bands.
| Boolean |
UseCentroids (Optional) | Locates the center of your customer area and calculates trade areas outward from this center point.
| Boolean |
Code sample
CustomerDerivedTradeAreas example (stand-alone script)
# Name: CustomerDerivedTA.py
# Description: Creates simple polygon based trade areas around San Francisco-based stores based on sales associated with customer data.
# Author: Esri
# Import system modules
import arcview
import arcpy
arcpy.ImportToolbox(r"C:\Program Files (x86)\ArcGIS\Desktop10.8\Business Analyst\ArcToolbox\Toolboxes\Business Analyst Tools.tbx")
# Acquire extension license
arcpy.CheckOutExtension("Business")
# Define input and output parameters for the Customer Derived Trade Areas tool
AnalysisType = "DETAILED WITH SMOOTHING"
InputFeatureLayer = "C:/temp/sf_stores.shp"
IDField = "STORE_ID"
All_Or_Single_Or_Selected = "ALL"
CustomerLayer = "C:/temp/sf_cust.shp"
LinkField = "STORE_ID"
CustomerWeightField = "SALES"
RingsCollection = "40;60;80"
OutputFeatureClass = "C:/temp/RingOutput.shp"
#Optional parameters omitted from the function call:
ByID_Or_ByName = "",
Single_Site = "",
UseSelectedFeatures = "false",
ExcludeOutlyingCustomers = "false",
CutoffDistance = "",
MeasureUnits = "Miles",
Donut = "false",
UseCentroids = "false"
# Create detailed customer derived trade areas
arcpy.CustomerDerivedTA_ba(AnalysisType,
InputFeatureLayer,
IDField,
All_Or_Single_Or_Selected,
CustomerLayer,
LinkField,
CustomerWeightField,
RingsCollection,
OutputFeatureClass)
# Release extension license
arcpy.CheckInExtension("Business")
Environments
This tool does not use any geoprocessing environments.
Licensing information
- Basic: Requires Business Analyst
- Standard: Requires Business Analyst
- Advanced: Requires Business Analyst