Dynamic Fields for Shape Features and Statistics

09-20-2012 10:23 AM
Status: Open
New Contributor II
Dynamic fields that calculate on-the-fly for formulas, shape attributes, statistics, summaries

Formulas - Multiple field calculations like excel (already mentioned in another post)
Shape Features - Areas, Lengths, etc.
Statistics - sum, avg, mean, etc
Summaries - Point Count within features

Essentially whenever a features is changes, the field automatically updates

Biggest help would be a summaries field where relates can be summarized in a field or points that fall within a polygon can be calculated without creating new files and will update as soon as new data is created.
Tags (1)
jhalligan ,

If your data is in a GeoDatabase then the this maintains several shape features attributes as dynamic fields.

I don't understand your statistics field idea you only have 1 row per feature?

Dynamic field calculations where you set some sort of formula would be a good addition to ArcGIS.
This is a common built-in function to any RDBMS, why can't we just make this happen? 
This is a great idea. I would really like to be able to create dynamic fields for when the source dataset is read-only and I do not want to create a local copy which would be a point-in-time snapshot and would quickly become out of data as the source data is changed.
Most of these behaviors can be done by Attribute Assistant in real time during editing in an edit session on a shapefile, feature class or table.  They can be set up in the Dynamic Value table to occur in response to feature creation, attribute updates, geometry updates, and/or manual triggering of a request to update all manual dynamic values (to prevent slow editing in cases where data that should only update after a series of features are created or edited, not as each feature is created or edited).

Field calculations within a single record is possible with the EXPRESSION method, which is the most flexible Attribute Assistant method.  It can concatenate field values and strings and do other string manipulations like changing case (anything VB Script can do), process math equations, set date stamps, do conditional expressions, etc

LATITUDE, LOGNITUDE, X_COORDINATE, and Y_COORDINATE all can auto update centroid locations of point line and polygons, and start and end locations of lines in response to feature geometry creation or changes.

LENGTH can be updated for line features; however, area and perimiters of polygons is not supported, although that should be a simple enhancement.

Summary statistics with intersecting features is possible with the INTERSECT_STATS method.  This could do a count of features if you autopopulated all points, lines or polygons with a field that always containeed the number 1 (Default value or Expression) and did a Sum with intersecting features.

Summary Statistics across all records in a feature class or table is possible with the FEATURE_STATS method.  Unfortunately, it cannot do summaries based on a unique case field.  However, although I do not do this in real time, Python cursors and dictionaries can do this without generating a separate statistics table and outperform Summary Statistics, Join and a Field Calculation.  See my post on Turbo Charging Data Manipulation with Python Cursors and Dictionaries.