Can you get to interact with it at all on the iPad? I wonder if adding a style formula that tells it display as a circle rather than a pin would speed things up as the pins seems to be the performance bottle neck currently.
Yes, it’s perfectly functional on both iPhone and iPad (even with nearly 8,000 points). Very occasional freezes of the entire UI on the iPad but not often enough to be worrying. Even cluster changes on zoom in/zoom out happen relatively quickly. iPad only crashes instantly if I switch to another application (presume iOS is trying to aggressively swap out Maparoni because it’s consuming lots of memory and the app is not ready for that state change? Just a guess)
Not sure if the circle formula will work - at the default zoom level and perhaps two zoom levels in, I see almost no pins anyway. It’s all clustered aggregation circles.
I’ll see what I can do re: producing a sample file.
Ah, yes, they’ll indeed just be clustered as one on the map. If you can find them in the list, you can get to the properties that way. Will add this to our list for how to best deal with that on the map itself.
I understand this is a non-trivial UI problem, the issue is that I can’t even see which IDs are in the cluster to be able to find them on the list. See example:
I can see the topmost ID (83029) and I know there are 5 other points hidden in that bubble but I don’t know which they are to be able to find them on the list. Google Earth solves this by expanding an aggregated circle into a spiderweb of points on click, the points then become individually clickable.
I have colouring logic based on the age of the point (ie, red for today, orange for the last week, yellow for older).
Interesting idea. Also not sure how to fit that into the current formula logic. Would if help if bubbles can’t be clustered if they are of a different colour? Or we could add another optional parameter to the
pin(Any, Color) formula where you can provide a “clustering” identifier to control that yourself.
For my specific, admittedly somewhat extreme usecase, not clustering the bubbles if they’re different colours would work quite well but I don’t know if that fits the general usage that others might expect?
I generate the geojson programmatically so I assign colours as a predefined property - this might be important information. I use Maparoni primarily to filter points by proximity and as a visualisation tool.
Just to note, it is actually quite brilliant when it works - see example:
The ochre coloured circle with 10 values is the default pin colour for this view (which indicates there are multiple age cohorts). But the yellow 3, the orange 6 and the red 3/4 bubbles seem to be clustered with the same age cohort because the colour has switched.
r we could add another optional parameter to the
pin(Any, Color) formula where you can provide a “clustering” identifier to control that yourself
Not quite sure I understood this - so I create each geojson point with a custom property (which allows identification of cohort - I do this already, except I just set maparoni-pin-color). How that translates to a cluster is a bit beyond me at the moment.
A mini first version of that is the coordinate.country formula which you can use as the style of a view. It looks up the coordinate in an internal GeoJSON with political boundaries and then displays the country shape on the map rather than the bubbles.
Hmmm, actually this might work if I can switch between the two styles. Thanks!
One more question, I tried this but it didn’t seem to work. I can run a distance filter just fine from my current location (ie, distance < 10km as per the example). It is sometimes useful to be able to do this from an arbitrary point which is not my current location - like so:
distance(“lat,lng”) < 2km
I variously get “distance can only be calculated between locations”, and “distance/1 function can only by (sic) applied to location (ie, LatLng)”