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.
Stores and Customers must both be point features.
Valid numeric values must be used when identifying a volumetric field to be used as a weighted value.
The trade area boundaries can be set to expand outward until encompassing user-prescribed customer counts, or summed and weighted numeric values, such as sales.
Store-to-customer assignments are controlled during setup by way of a common, user-specified ID.
Syntax
arcpy.ba.CustomerDerivedTA(in_stores_layer, store_id_field, in_customers_layer, link_field, out_feature_class, method, rings, customer_aggregation_type, {customer_weight_field}, {exclude_outlying_customers}, {cutoff_distance}, {dissolve_option}, {use_customer_centroids}, {distance_type}, {units}, {travel_direction}, {time_of_day}, {time_zone}, {search_tolerance}, {polygon_detail}, {iterations_limit}, {minimum_step}, {target_percent_diff})
Parameter | Explanation | Data Type |
in_stores_layer | Input point layer representing store or facility locations. | Feature Layer |
store_id_field | Unique ID representing a store or facility location. | Field |
in_customers_layer | Input point layer representing customers or patrons. | Feature Layer |
link_field | An ID used to assign individual customers to stores. | Field |
out_feature_class | The output trade area feature class. | Feature Class |
method | Specifies the type of customer-derived trade area to be generated.
| String |
rings [rings,...] | One or more values representing the percentage of customers—for example, total count or a customer attribute and total sales assigned to each store. Each value represents one trade area polygon. | Double |
customer_aggregation_type | Specifies the type of aggregation.
| String |
customer_weight_field (Optional) | 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 |
exclude_outlying_customers (Optional) | Specifies whether to exclude outlying customers from the trade area creation process.
| Boolean |
cutoff_distance (Optional) | The distance beyond which customers will be considered outliers, and therefore excluded from consideration during trade area creation. | Linear Unit |
dissolve_option (Optional) | Specifies whether to create polygons of the entire area or split the polygons into individual features.
| String |
use_customer_centroids (Optional) | Specifies the center of your customer area and calculates trade areas outward from this point.
| Boolean |
distance_type (Optional) | Specifies how the distance is calculated based on method of travel. | String |
units (Optional) | The units that will be used for the distance values. | String |
travel_direction (Optional) | Specifies the direction of travel that will be used between stores and customers.
| String |
time_of_day (Optional) | The time and date that will be used when calculating distance. | Date |
time_zone (Optional) | Specifies the time zone that will be used for the Time of Day parameter.
| String |
search_tolerance (Optional) | The maximum distance that input points can be from the network. Points located beyond the search tolerance will be excluded from processing. The parameter requires a distance value and units for the tolerance. | Linear Unit |
polygon_detail (Optional) | Specifies the level of detail that will be used for the output drive-time polygons.
| String |
iterations_limit (Optional) | Restrict the number of drive times used to find the optimal threshold limit. | Long |
minimum_step (Optional) | The minimum increment distance or time—for example, 1 mile or 1 minute, used between iterations to expand until the threshold is reached. | Double |
target_percent_diff (Optional) | The maximum difference between the target value and threshold value when determining the threshold drive time—for example, 5%. The default value is 5. | Double |
Code sample
The following Python window script demonstrates how to use the CustomerDerivedTA tool.
import arcpy
arcpy.ba.CustomerDerivedTA("Facilities", "ID", "Customers", "ID",r"C:\Temp\Output.gdb\TradeArea75pct","DETAILED_WITH_SMOOTHING", [75], "COUNT", None,"ALL_POINTS", None, "OVERLAP", "USE_STORES", '', '',"TOWARD_STORES", None, "TIME_ZONE_AT_LOCATION", None,"STANDARD", 10, None, 5)
Environments
Licensing information
- Basic: Requires Business Analyst
- Standard: Requires Business Analyst
- Advanced: Requires Business Analyst