Adakah Contoh D3.brush () yang digunakan dengan Leaflet?

10

Saya memiliki peta selebaran yang telah saya tempatkan SVG "di atas" menggunakan panel hamparan selebaran. Saya ingin menambahkan sikat D3 ke panel overlay yang kemudian akan memperbarui bagan terpisah. Saya telah mencari-cari contoh D3.brush () dan contoh leaflet secara simultan tetapi sepertinya tidak dapat menemukannya.

Hal terdekat yang saya temukan adalah https://github.com/mbostock/d3/issues/1321 ini dan ini https://www.mapbox.com/mapbox.js/example/v1.0.0/timeline-scaled-markers/ (Ini adalah menyikat grafik bukan peta).

Saya bertanya-tanya apakah:

  1. Ada yang tahu contoh, ATAU
  2. Ada yang tahu apakah ini mungkin / cukup mudah, ATAU
  3. Jika memungkinkan, ada yang punya tips tentang masalah yang mungkin saya temui.
mdgis
sumber
Apakah ini berhasil? Apakah Anda menemukan sikat tidak sejajar dengan mouse Anda saat berada di firefox?
Frazer Kirkman
Ini adalah alternatif untuk menyikat - github.com/w8r/leaflet-area-select
Frazer Kirkman

Jawaban:

2

Saya baru saja membuat satu contoh dasar berdasarkan bl.ock ini .

Proses

  • tambahkan grup layer Anda ke peta (dari GeoJSON)

  • simpan grup layer Anda dalam sebuah variabel, yaitu var layer_group = L.geoJSON(json, {...}).addTo(your_map);

  • Dalam brushendedfungsi Anda , beralihlah layer_group.eachLayer()dan gunakan your_map.removeLayer(layer)dan your_map.addLayer(layer)untuk mengontrol visibilitas fitur.

Inilah JSFiddle: https://jsfiddle.net/0dyjkk2h/2/

Peta leaflet dengan kuas D3

thibautg
sumber
Mungkin saya tidak mengerti pertanyaan itu dengan benar. Apakah Anda ingin dapat menyikat pada peta atau pada bagan terpisah (seperti dalam contoh saya)?
thibautg