AGOL Overview
ENV 859 - Geospatial Data Analytics | Fall 2025 | Instructor: John Fay
This outline sketches the workflow for developing a dashboard to compare FEMA redacted National Flood Insurance Claims to demographic variables, specifically Social Vulnerability Index data, at the tract level for North Carolina.
- FEMA data are obtained from https://www.fema.gov/openfema-data-page/fima-nfip-redacted-claims-v2/
- SVI data are stored as an ArcGIS Online Feature Service: https://cdcarcgis.maps.arcgis.com/home/item.html?id=3827cb5593174c79b35119611299279b
1. Upload the CSV & Create a Table service layer
1.1 In AGOL
+ New item& Upload CSV- Option to Publish as hosted feature layer or table
- Option to set field types and field aliases
- Optionally, share the item
1.2 Using ArcGIS API for Python
1.2.1 Upload the CSV to AGOL
- Create
folderobject (existing or new) - Specify the CSV’s item properties:
- Item type (CSV)
- Title
- Description
- Tags
- Use
folder.add()to upload the CSV to AGOL
1.2.2 Publish the CSV file as a hosted table
- Create a dictionary of publishing parameters:
- Name
- Type (Table)
- Location type (None)
- Layer info: Field Properties for each field
- Field name, field type, field alias
- Use the
publish()function of the CSV item to publish it - Optionally, share the item with the
share()function
2. Create a Web Map
2.1 Open the Table service layer in a new web map
- Click Add to Web Map
- Note the resource is added as a table object
- Save your map
- Share the map with…
2.2 Add the 2020 SVI tract-level features for North Carolina
2.2.1 Locate and add the layer to the map
- From the Add Layers menu (
+), select Browse Layers - Search the Living Atlas for “SVI” to locate the “CDC/ATSDR Social Vulnerability Index 2020 USA” feature layer
- Add it to your map
- This add all the layers; we just want the “SVI2020_US_tract - Theme 1” layer
2.2.2 Subset for Theme 1 Tract Level:
- Option 1: Ungroup and remove other layers
- Option 2: Get URL of the layer and just add it
- Rename the layer: “SVI2020 Tract-NC”
- Set Visibility level
2.2.3 Filter Layer for just NC records
- Zoom in to level where features are visible
- Click the filter (
) icon - Filter for “State-level FIPS code is 37”
- Save your map
2.3 Add the Hurricane Storm Track features
2.3.1 Locate the service
- Browse Living Atlas for “Hurricane”
- Select “Historical Hurricane Tracks” and add to your map
2.3.2 Filter storm records
- Filter for storms in the North Atlantic (NA) basin
- Filter for storm occurring in the year 2000 and later
- Save your map
3. Create a Dashboard
3.1 Initialize the dashboard from your web map
- In the left action bar, select Create App>Dashboards
- Note the dashboard item is automatically saved to the same folder as your map
3.2 Add regions to your dashboard
3.2.1 Add a Header
- From the View menu, select Header and add it
- Optionally: edit the Title and Subtitle
- Save your dashboard
3.3. Add Selectors to filter the storm tracks
3.3.1 Add a Selector to your Header to select the Storm Season
- In the Header settings, select
+ Add selector, specifying as “Category selector” - Ensure the
Dataoption is selected in the left-side Action menu- Set the categories to be set from Grouped values
- The grouped values will be extracted from the “Historical Hurricane Tracks” layer
- The Category field with be
year - Sort the values in descending order
- Activate the
Selectoraction menu- Change the label to: “Select storm season”
- Give the selector a name in the
Generaloption (at the very bottom) - Name it:
SeasonSelector
- Activate the
Actionsaction menu- Set the Active Target for the Filter option to the Historical Hurricane Tracks layer
- Set it to Render only when filtered
- Click Done to accept the settings
- Save your dashboard
- Test your filter
3.3.2 Add a Selector to your Header to select the Storm Name
- Repeat steps above, but filter for Storm Name
- Reconfigure the Storm Year Selector’s action so that it also filters the Storm Name Selector
3.4 Create a Visualization
3.4.1 Add a new Serial Chart below your map
- Set its data source to be the
FEMA_FloodClaimslayer - Set the Category field to be Flood Event
- Set the Statistic to be Sub
- Set the Field to be Building Damage Amount
3.4.2 Filter the Serial Chart to only show selected Tracts
- Open the Map configuration menu
- Activate the Layer actions
- Select the SVI2020 Tract-NC layer
- Set that layer to filter the chart created above
- Set the Source field to be
Tract-level FIPS code - Set the Target field to be
Census Tract
- Set the Source field to be