Qualche esempio di D3.brush () usato con Leaflet?


10

Ho una mappa di volantini in cui ho posizionato un SVG "sopra" usando il riquadro di sovrapposizione dei volantini. Voglio aggiungere un pennello D3 al riquadro di sovrapposizione che aggiornerà quindi un grafico separato. Ho cercato alcuni esempi di esempi D3.brush () e leaflet simultanei, ma non riesco a trovarne.

La cosa più vicina che ho trovato è stata questa https://github.com/mbostock/d3/issues/1321 e questa https://www.mapbox.com/mapbox.js/example/v1.0.0/timeline-scaled-markers/ (questo sta spazzolando il grafico e non la mappa).

Mi stavo chiedendo se:

  1. Qualcuno sapeva di qualche esempio, OR
  2. Qualcuno sapeva se questo era possibile / ragionevolmente semplice, OR
  3. Se possibile, chiunque avesse qualche consiglio sul tipo di problemi che avrei potuto incontrare.

L'hai fatto funzionare? Hai trovato che il pennello non si allineava con il mouse in Firefox?
Frazer Kirkman,

Questa è un'alternativa al pennello - github.com/w8r/leaflet-area-select
Frazer Kirkman

Risposte:


2

Ho appena fatto un esempio di base basato su questo bl.ock .

Processi

  • aggiungi il tuo gruppo di livelli alla mappa (da GeoJSON)

  • salva il tuo gruppo di livelli in una variabile, ad es var layer_group = L.geoJSON(json, {...}).addTo(your_map);

  • Nella tua brushendedfunzione, scorrere layer_group.eachLayer()e utilizzare your_map.removeLayer(layer)e your_map.addLayer(layer)controllare la visibilità della funzione.

Ecco il JSFiddle: https://jsfiddle.net/0dyjkk2h/2/

Mappa depliant con pennello D3


Forse non ho capito correttamente la domanda. Vuoi essere in grado di spazzolare sulla mappa o su un grafico separato (come nel mio esempio)?
thibautg,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.