I develop an Android app in Java which displays points on a map. Every point has a label. Since there can be up to thousands of points on the map, the labels tend to overlap on the screen, especially when points are close to each other.
I am looking for a library that helps me draw the labels more intelligent.
- It is enough if a max of 30 labels are drawn even if more are on the screen. The rest can be ignored to avoid having the screen full of labels.
- I want to draw only labels that do not overlap. So if two points are close then only the label of one of them should be drawn.
- The library has to work fast and very memory efficient since it is called up to 30 times a second when I zoom the map or move the location on the screen.