Come creare etichette verticali in QGIS?


13

Come creare etichette verticali (ogni etichetta in una nuova riga) come:

1998
150
pipe name

e non orizzontale:

1998 150 pipe name

Risposte:


12

È possibile utilizzare un'espressione QGIS nell'espressione etichetta.

"Date" || '\n' || "Size" || '\n' || "name"

Puoi anche avvolgere l'espressione su più righe per fare la stessa cosa

"Date" || '
' || "Size" || '
' || "name"

Nota 'alla fine e all'inizio di ogni riga. Il primo è più chiaro con le sue intenzioni, quindi lo userei.


8

Un'alternativa all'eccellente risposta di Nathan è quella di utilizzare la nuova scheda di etichettatura in QGIS 1.9 (disponibile anche in 1.8 ma non dal menu delle proprietà del livello. Invece vai su Livello-> Etichette).

Se scorri verso il basso sulla scheda delle impostazioni dell'etichetta troverai un'opzione a Più linee, dove puoi specificare il carattere su cui avvolgere la linea. Questo sarà utile se stai concatenando la tua stringa usando qualcosa di diverso da un carattere di nuova riga (secondo la risposta di Nathan) o se hai una stringa che si trova in un singolo campo (spesso devo fare i conti con dati leggermente "disordinati" da altre fonti come questo).

L'altro vantaggio dell'opzione linee multiple è che è possibile specificare anche l'allineamento e l'altezza della linea. Quindi potresti concatenare usando gli spazi e quindi allinearti centralmente o a destra con una spaziatura di 1,5 linee (se questo è cartigraficamente attraente).

per esempio "Date" || ' ' || "Size" || ' ' || "name"

... con il wrapping impostato su un singolo spazio e il valore align su 'right' potrebbe darti qualcosa del tipo:

     1998
      150
pipe name

2

Dalla versione 2.12 di QGIS è possibile utilizzare un'etichettatura basata su regole: una regola per ciascun campo; Nello screenshot puoi vedere come farlo !!! inserisci qui la descrizione dell'immagine

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.