Come modellare i punti in QGIS in base a più attributi


13

Durante il tentativo di trovare un modo utile per visualizzare i terremoti, ho notato che non è così facile da gestire.

Vorrei essere in grado di riconoscere "Magnitudo", "Data" e "Profondità" dallo stile del punto. Qualcosa di simile a:

  • dimensione: in base alla grandezza
  • profondità: colore di base (es. <15 rosso, 15-30 giallo,> 30 blu)
  • data: intensità del colore come sfumatura dal 100% di colore al bianco / ...

C'è un modo per farlo senza definire dozzine di regole?

Risposte:


14

Perché non usare l'etichettatura basata su regole? È possibile semplificare molto l'attività, se si utilizzano categorie per più gradienti in base ai dati degli attributi. Dal mio punto di vista, l'utilizzo delle categorie nell'etichettatura basata su regole è uno dei principali vantaggi di QGIS.

Per i tuoi dati (senza conoscere la struttura) consiglierei il seguente flusso di lavoro:

  • Crea un semplice gradiente basato su regole per i tuoi valori di data tramite lo styler punti classificato o classificato (stile bianco o grigiastro).
  • Regola la dimensione dei punti facendo clic su "Avanzate" e "Dimensione campo ridimensionato". Qui seleziona la grandezza dei tuoi punti. Salva lo stile risultante come stile SLD!
  • Vai all'etichettatura basata su regole, carica jn sul tuo SLD e aggiungi per ogni punto dati per clic con il pulsante destro del mouse su una categoria (o intervallo) con il gradiente di colore di tuo gradimento per la profondità e applicalo a ciascun set di regole.

In questo modo (potresti anche creare una categoria sulle regole in una categoria ;-)): inserisci qui la descrizione dell'immagine

  • Successivamente non dimenticare di regolare l'ordine di rendering e forse controllare le dimensioni dei punti.

Capisco che questa soluzione dipende da qualche sforzo (mouseclicks) sul tuo sito, ma alla fine una bella mappa vale sempre la pena.



4

Aggiornato per QGIS 2.8

Supponendo dati come questo:

id | magnitude | date | depth
 1 |     4     | 1912 |  100
 2 |     3     | 1932 |   85

Utilizzando uno stile definito dai dati, impostare le dimensioni da controllare dal campo di magnitudine.

Per il colore, che è definito da data e profondità, puoi usare la seguente espressione

CASE 
  WHEN depth < 15 
       THEN color_hsl(1, 100, scale_linear(date, 1900, 2015, 100, 50)
  WHEN depth >= 15 AND depth < 30 
       THEN color_hsl(60, 100, scale_linear(date, 1900, 2015, 100, 50)
  WHEN depth >= 30 
       THEN color_hsl(240, 100, scale_linear(date, 1900, 2015, 100, 50)
END

I "vecchi" punti del 1900 saranno bianchi hsl (x, x, 100) mentre i nuovi punti sono più colorati fino a hsl (x, x, 50).


3

L'altra opzione consiste nell'utilizzare un assistente dimensioni disponibile per ciascuno stile di livello dati. Supponi di aver classificato i dati dei punti in base al colore utilizzando un determinato attributo. Basta fare clic con il tasto destro su ciascuna categoria e selezionare Cambia dimensione. Dovrebbe visualizzare una finestra di dialogo delle dimensioni. Quindi fare clic sul filtro espressioni e quindi selezionare Assistente dimensioni.

inserisci qui la descrizione dell'immagine

La finestra di dialogo Assistente dimensioni ha un'opzione per scegliere la colonna da ridimensionare. Puoi anche scegliere il metodo di ridimensionamento in base al quale ridimensionare i simboli e quindi fornire l'intervallo di dimensioni e l'intervallo corrispondente dei valori dei dati. inserisci qui la descrizione dell'immagine Nota che dovrai farlo per ogni categoria di dati.


Non so perché questa risposta non sia più votata, questo è quello che volevo, ed è di gran lunga il più veloce
Scott Staniewicz,

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.