#javascript #mapbox #mapbox-gl-js
#javascript #mapbox #mapbox-gl-js
Вопрос:
У меня есть файл GeoJSON, содержащий коллекцию объектов, состоящую из линейных объектов, где каждый представляет раздел маршрутов общественного транспорта между двумя остановками. Для каждого раздела в настоящее время имеется 24 различных объекта, представляющих по 1 часу дня каждый, и ползунок, который позволяет мне отображать нужные функции часов. При нажатии на объект (сегмент автобусной линии) появляется всплывающее окно, которое показывает мне некоторые атрибуты, такие как общее количество пассажиров в этом сегменте за этот час.
В настоящее время эти номера атрибутов представляют все автобусные линии, посещающие этот конкретный сегмент (в соответствии с атрибутами GeoJSON, созданными с помощью GeoPandas).
Однако я хочу разделить объекты на разные номера линий шины. У меня была бы функция переключения для отображения определенных и нескольких линий шины путем выбора соответствующего значения атрибута.
Может ли Mapbox позволить мне отображать перекрывающиеся объекты И применять математическое выражение, подобное «суммировать все, где segment_id равно *, и отображать это во всплывающем окне?
Я думал о кластерах, но не могу концептуализировать это достаточно хорошо, чтобы заставить его работать.
cluster: true, cluster_id: 4, max: 50, sum: 100, has_island: false, point_count: 10
То же самое с выражениями [" ", number, number, ...]: number
: как мне применить это к моему конкретному случаю?
Большое вам спасибо за любой вклад!
Пример структуры GeoJSON:
{"type": "FeatureCollection", "features": [{"type": "Feature", "properties": {"time": 0, daytype": 0, "occsum": 57, "occmean": 19, "loadmax": 0.3332124289686858, "loadmean": 23, "name_start": "Bahnhof Tiefenbrunnen", "name_ziel": "Zollikon, Bahnübergang"}, "geometry": {"type": "LineString", "coordinates": [[8.56196881850715, 47.34937679929789], [8.565194360980028, 47.346512585317505]]}}, {"type": "Feature", "properties": {"time": 0, "daytype": 1, "occsum": 30, "occmean": 15, "loadmax": 0.18583000846330552, "loadmean": 18, "name_start": "Bahnhof Tiefenbrunnen", "name_ziel": "Zollikon, Bahnübergang"}, "geometry": {"type": "LineString", "coordinates": [[8.56196881850715, 47.34937679929789], [8.565194360980028, 47.346512585317505]]}}