ThinkGeo.com    |     Documentation    |     Premium Support

Markers Clustering

I have application that displays thousands of markers on relatively small area (airport size). The performance is getting sluggish when I get over ~1000 markers.


Is there some sort of a clustering function? I will potentially have tens of thousands of points to display and I'd like to show more of them as users zoom in. 

I am worried about performance. I understand that I could use the ZoomLevels to show the markers only at higher zooms, but I need to be able to convey the sense of sample density even at the overview level.


I was looking into clustering and K-means clustering techniques seem to be the way to go for this type of application.


A while ago Ben mentioned that you will consider adding clustering to your control, when I first brought it up. Is it on your future development schedule?


Thanks


Jakub


 



Jakub, 



It still in process; in our latest release, we have a new API to make suppress some markers which are too close together.



Please try this method temporary and we’ll let you know when we have this supported. Please try the code below with tens of thousands of points. The bigger the size you are setting, the more count of markers will be suppressed which means less markers exists in the viewport. I think it can improve the performance.inMemoryMarkerOverlay.SuppressingGridSize = 50;
On the other hand, we won’t give up the Clustering marker which is really a good feature for Web Edition.



If you have any question please let me know.



Thanks,

Howard



Hi Ben,


That could work for now. are the markers suppressed at all zoom levels or do they appear as user zooms in?


Thanks,


jakub


 



Jakub, 



When you zoomIn, the markers suppressed will appear as you zoomIn more. 



My test result is as following: 



ZoomLevel3: 9 Markders 

ZoomLevel4: 24 Markers 

ZoomLevel5: Around 66 Markers. 



Any more questions just let me know. 



Thanks. 



Yale 

 



Hi, 
  
 I have an exact situation that I need to display roughly 1000 markers within a small area.  I’d like to use the supressing grid size as well.  I set it to 50 as what is mentioned.  When I pan, it seems the number of markers changes as well.  One marker at a location can show but then go missing when I pan my map.  Isn’t it true that it should only change when zoom level changes? 
  
 Thanks, 
 Tracy

Hi, Tracy 
  
 Yes, the number of markers will change when you pan or zoom in/out. The makers which are near too close will not be rendered depend on the SuppressingGridSize property. I think it’s useful when you display markers within not a big extent. 
  
 Thanks, 
 Khalil 


Hi Khalil, 
  
 I understand how some markers will go missing when you zoom out and more markers appear when you zoom in.  This is because of the distance between markers are changed.  But how about panning?  Let say I have markers all in one horizontal line and each of them have equal spacing like  
 ‘M   M   M   M’.  When I pan left, they become ‘MM   MM   MM   MM   MM’.  Why is that? 
  
 Tracy

Hi, Tracy


I can't recreate your problem. Please try the sample in the attachment.


Thanks,


Khalil



1908-WebApplication1.zip (2.18 KB)