mockup: DBSCAN density clustering for event layers [DHIS2-21461] - #3767
Draft
BRaimbault wants to merge 1 commit into
Draft
BRaimbault wants to merge 1 commit into
BRaimbault wants to merge 1 commit into
Conversation
Mockup for DHIS2-21461. Adds a third event-clustering mode alongside the existing grid and donut clustering: density-based clustering via @turf/clusters-dbscan, which groups nearby events by density rather than by map grid cell and explicitly separates dense clusters from noise (sporadic events that join no cluster). Entirely client-side, built on the existing "events" layer type in maps-gl — no maps-gl changes needed, since its point/label rendering already supports per-feature radius/color/name overrides. Settings (enabled, neighborhood radius, minimum cluster size) are gated behind and persisted in the layer's config JSON blob, so a saved map round-trips the DBSCAN settings for sharing. DO NOT MERGE Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
|
Contributor
|
🚀 Deployed on https://pr-3767.maps.netlify.dhis2.org |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.



Test map:
https://pr-3767.maps.netlify.dhis2.org/#/K4TwN698Hwi
→ https://dev.im.dhis2.org/maps-app-42-3
Mockup for DHIS2-21461
DO NOT MERGE
Description
Adds a third event-clustering mode alongside the existing grid and donut clustering: density-based clustering via @turf/clusters-dbscan, which groups nearby events by density rather than by map grid cell and explicitly separates dense clusters from noise (sporadic events that join no cluster).
Entirely client-side, built on the existing "events" layer type in maps-gl — no maps-gl changes needed, since its point/label rendering already supports per-feature radius/color/name overrides. Settings (enabled, neighborhood radius, minimum cluster size) are gated behind and persisted in the layer's config JSON blob, so a saved map round-trips the DBSCAN settings for sharing.
Quality checklist
Add N/A to items that are not applicable.
ToDos
Known issues
Screenshots