Будь-які приклади D3.brush (), які використовуються з Leaflet?


10

У мене є листівкова карта про те, що я розмістив SVG "на вершині", використовуючи панель накладання листівки. Я хочу додати пензлик D3 до області перекриття, яка потім оновить окрему діаграму. Я роздивився приклади одночасних прикладів D3.brush () та листівки, але, здається, не знайшов жодного.

Найближче, що я знайшов, це це https://github.com/mbostock/d3/isissue/1321 та це https://www.mapbox.com/mapbox.js/example/v1.0.0/timeline-scaled-markers/ (це чищення діаграми, а не карта).

Мені було цікаво, чи:

  1. Хтось знав про будь-які приклади, АБО
  2. Хтось знав, чи це можливо / розумно прямо, АБО
  3. Якщо можливо, у когось були поради щодо того, з якими проблемами я можу зіткнутися.

Ви працювали над цим? Ви виявили, що кисть не вирівнюється з вашою мишкою, коли ви знаходитесь у firefox?
Фрейзер Кіркман

Це альтернатива кисті - github.com/w8r/leaflet-area-select
Фрейзер Кіркман

Відповіді:


2

Я щойно зробив один основний приклад на основі цього bl.ock .

Процес

  • додайте групу шарів на карту (від GeoJSON)

  • збережіть свою групу шарів у змінній, тобто var layer_group = L.geoJSON(json, {...}).addTo(your_map);

  • У своїй brushendedфункції повторіть, layer_group.eachLayer()використовуйте your_map.removeLayer(layer)та your_map.addLayer(layer)керуйте його видимістю.

Ось JSFiddle: https://jsfiddle.net/0dyjkk2h/2/

Листівка карта пензлем D3


Можливо, я неправильно не зрозумів питання. Ви хочете мати змогу нанести на карту чи на окрему діаграму (як у моєму прикладі)?
thibautg
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.