Настройте номер дисплея с помощью Marker Clusterer - PullRequest
0 голосов
/ 26 января 2019


В качестве вложения кластер отображает 417 маркеров в Лондоне.
Я бы хотел немного кастомизировать по порогам. Например

  • <= 20: Display real number
  • From 20 to 50: 20+
  • From 50 to 100: 50+
  • From 100 to 200: 100+
  • > 200: 200+
  • и т.д.

Как применить пороговые значения к кластеризатору?

enter image description here

1 Ответ

0 голосов
/ 26 января 2019

Я нашел замечательный способ изменить номер дисплея в кластере.
методом калькулятора изменений

markerCluster.setCalculator(new_cluster_calculator);

function new_cluster_calculator (markers, numStyles) {
  var index = 0;
  var title = "";
  var count = markers.length;
  var countStr = count.toString();

  var dv = countStr;
  while (dv !== 0) {
    dv = parseInt(dv / 10, 10);
    index++;
  }

  index = Math.min(index, numStyles);

  if (count >= 200) {
    count = '200+';
  } else if (count >= 100) {
    count = '100+';
  } else if (count >= 50) {
    count = '50+';
  }

  return {
    text: count,
    index: index,
    title: title
  };
};
...