Skip to content

Commit b02f4bc

Browse files
committed
Update README.md
1 parent 28d6caa commit b02f4bc

1 file changed

Lines changed: 38 additions & 3 deletions

File tree

README.md

Lines changed: 38 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -63,8 +63,22 @@ An interactive web-based map visualization tool for exploring South Australian c
6363
- **Search by Address/Suburb**: Find crashes near any SA location
6464
- **Radius Filtering**: Set custom search radius (1-50km)
6565

66+
#### Interactive Data Table
67+
- **Sortable Columns**: Click any column header to sort data (Year, Date/Time, Suburb, LGA, Severity, Type, Speed, Casualties)
68+
- **Flexible Pagination**: Choose to display 10, 25, 50, 100, 250, or 500 rows per page
69+
- **Quick Navigation**: Jump directly to any page number or use Previous/Next buttons
70+
- **Real-time Search**: Filter table data instantly by typing in the search box - searches across all columns
71+
- **Column Management**: Show or hide specific columns using the column picker
72+
- **Resizable Columns**: Drag column borders to adjust widths to your preference
73+
- **Click to Explore**: Click any row to zoom to that crash location on the map and view full details
74+
- **Map Sync**: Hover over rows to highlight corresponding markers on the map
75+
- **Maximize View**: Expand table to full screen for detailed analysis
76+
- **Data Export**: Export current page or all filtered data to CSV format
77+
- **Persistent Settings**: Your table preferences (page size, column visibility, sort order) are saved automatically
78+
6679
#### Data Export
67-
- **CSV Export**: Export filtered crash data to CSV format
80+
- **CSV Export**: Export filtered crash data to CSV format from Statistics panel or directly from the data table
81+
- **Export Options**: Choose to export all filtered data or just the current page view
6882
- **Summary Statistics**: Includes totals for crashes, casualties, and injuries
6983
- **Filter Documentation**: Active filters are documented in the export
7084
- **Comprehensive Data**: Includes crash details, location, casualties, and units involved
@@ -117,7 +131,25 @@ Click on any marker to see comprehensive crash information:
117131
- **Units Involved**: All units in the crash including vehicles (with type, year, occupants), pedestrians, and fixed objects struck
118132
- **DUI Involvement**: Clearly marked if alcohol was involved
119133

120-
### 5. **Share & Bookmark**
134+
### 5. **Use the Data Table**
135+
1. Click "View Data Table" button in the Statistics panel
136+
2. Use the search box to filter results across all columns
137+
3. Click column headers to sort data
138+
4. Adjust page size (10-500 rows) based on your preference
139+
5. Click any row to jump to that crash on the map
140+
6. Hover over rows to see markers highlighted on the map
141+
7. Use the column picker (⚙️) to show/hide specific columns
142+
8. Export current page or all data to CSV
143+
144+
**Keyboard Shortcuts (when table is open):**
145+
- `Ctrl/Cmd + ←` - Previous page
146+
- `Ctrl/Cmd + →` - Next page
147+
- `Ctrl/Cmd + Home` - First page
148+
- `Ctrl/Cmd + End` - Last page
149+
- `/` - Focus search box
150+
- `Escape` - Close table or column picker
151+
152+
### 6. **Share & Bookmark**
121153
- Filters are encoded in URL - copy the URL to share your exact view
122154
- Bookmark specific filter combinations
123155
- Send filtered views to colleagues/friends
@@ -155,12 +187,15 @@ LGA assignments are pre-computed using Python geospatial scripts (`scripts/add_l
155187
**Coverage:** 98% of crashes (187,017 out of 190,910) have pre-assigned LGAs.
156188

157189
### Performance Optimizations
158-
- **Progressive Marker Loading**: 190K+ markers loaded in chunks of 2000 with progress indicator
190+
- **Progressive Marker Loading**: 190K+ markers loaded in chunks of 20,000 with progress indicator
159191
- **Icon Caching**: Reuses marker icons instead of creating duplicates
160192
- **Batch Processing**: Adds markers to cluster in batches for faster rendering
161193
- **Dynamic Clustering**: More aggressive clustering at lower zoom levels
162194
- **Lazy Popup Generation**: Crash details only generated when popup is opened
163195
- **Service Worker Caching**: Caches 200MB+ of data files for offline access
196+
- **Efficient Table Rendering**: Data table uses virtual pagination and only renders visible rows
197+
- **Filter Result Caching**: Previously used filter combinations are cached for instant re-application
198+
- **Client-side Persistence**: User preferences (table settings, theme) stored locally for instant restoration
164199

165200
## Development
166201

0 commit comments

Comments
 (0)