Feature request: "Fuzz" coordinates of nodes that have identical coordinates on map #2

Closed
opened 2026-10-05 06:01:26 +02:00 by adam · 2 comments
Owner

On the map page, if multiple nodes have the exact same coordinates either intentionally or due to proximity (and Meshtastic's anonymizing algorithm), the map page will only show one of the nodes from that location. Requested feature would be that if multiple nodes have the same location, that the data supplied to the map page fuzz/randomize the location of each slightly so they are close, but not exactly in the same location. They would then be shown as a little cluster. Not having the exact location displayed should be fine since Meshtastic is already anonymizing the location of nodes on the default channel anyway.

On the map page, if multiple nodes have the exact same coordinates either intentionally or due to proximity (and Meshtastic's anonymizing algorithm), the map page will only show one of the nodes from that location. Requested feature would be that if multiple nodes have the same location, that the data supplied to the map page fuzz/randomize the location of each slightly so they are close, but not exactly in the same location. They would then be shown as a little cluster. Not having the exact location displayed should be fine since Meshtastic is already anonymizing the location of nodes on the default channel anyway. <!-- github-sync-id:3359646917 -->
adam closed this issue 2026-10-05 06:01:26 +02:00
Author
Owner

This seems to keep them from overlapping in my local install. In the map.html template:

    lat: {{ ((node.last_lat / 10**7) + (range(-9,9) | random) / 10000) | round(7) }},
    long: {{ ((node.last_long / 10**7) + (range(-9,9) | random) / 10000) |round(7) if node.last_long is not none else "null" }},
This seems to keep them from overlapping in my local install. In the map.html template: ``` lat: {{ ((node.last_lat / 10**7) + (range(-9,9) | random) / 10000) | round(7) }}, long: {{ ((node.last_long / 10**7) + (range(-9,9) | random) / 10000) |round(7) if node.last_long is not none else "null" }}, ``` <!-- github-comment-id:3229123122 -->
Author
Owner

I like the idea and the code... thank you for your contribution. I will added to the next commit!

I like the idea and the code... thank you for your contribution. I will added to the next commit! <!-- github-comment-id:3234656830 -->
Sign in to join this conversation.
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: adam/meshview#2