Кластеризация маркеров Google Server Side - Python/Django

Вы можете использовать простой foreach, чтобы получить все ссылки внутри определенного тега div

    //find all a tags that have a href in the div abcde

    $hrefDetails = $html->find('div[@class="layout-1-1"]', 0);
    $linkArray = array();

    foreach($hrefDetails->find('a[href]') as $link){
        array_push($linkArray, $link);
    }

   //print result here

    echo "<pre>";
    print_r($linkArray);
    echo "</pre>";
7
задан Anony-Mousse 21 March 2013 в 08:02
поделиться

4 ответа

Один из способов сделать это - определить сетку с размером единицы на основе уровня масштабирования. Таким образом, вы собираете все элементы в сетке по широте, долготе до одного знака после запятой. Пример - 42,2х73,4. Таким образом, точка в 42.2003x73.4021 попадает в эту ячейку сетки. Эта ячейка ограничена 42.2x73.3 и 42.2x73.5.

Если в ячейке сетки есть одна или несколько точек, вы помещаете маркер в центр этой сетки.

Затем вы подключаете zoomend. измените размер сетки и измените маркеры.

http://code.google.com/apis/maps/documentation/reference.html#GMap2.zoomend

0
ответ дан 7 December 2019 в 16:45
поделиться

Этот является платным сервисом, использующим кластеризацию на стороне сервера, но я не уверен, как он работает. Я предполагаю, что они просто используют ваши данные для создания маркеров, которые будут отображаться на каждом уровне масштабирования.

Обновление: В этом руководстве демонстрируется базовая функция кластеризации на стороне сервера. Он написан на PHP для API статических карт, но вы можете использовать его в качестве отправной точки.

2
ответ дан 7 December 2019 в 16:45
поделиться

Я использую Django и Python для кластеризации объектов недвижимости и аренды, и источник можно найти здесь .

Надеюсь, это поможет!

0
ответ дан 7 December 2019 в 16:45
поделиться

Возможно, вы захотите взглянуть на страницы DBSCAN и OPTICS в Википедии, они выглядят очень подходящими для кластеризации мест на карте. Также есть страница о Cluster Analysis , на которой показаны все возможные алгоритмы, которые вы можете использовать, большинство из которых было бы тривиально реализовать на любом языке по вашему выбору.

Имея более 28 тысяч баллов, вы можете пропустить django и просто сразу перейти на C / C ++ и, конечно же, не ожидать, что это будет вычисляться в реальном времени в ответ на веб-запросы.

1
ответ дан 7 December 2019 в 16:45
поделиться
Другие вопросы по тегам:

Похожие вопросы: