In qualche modo è possibile in QGIS collegare etichette e punti con una linea / freccia o qualcosa del genere? Nella mia mappa non è chiaro quale etichetta abbia il suo punto. Non posso avvicinarlo perché ci sono molti altri punti a venire.
In qualche modo è possibile in QGIS collegare etichette e punti con una linea / freccia o qualcosa del genere? Nella mia mappa non è chiaro quale etichetta abbia il suo punto. Non posso avvicinarlo perché ci sono molti altri punti a venire.
Risposte:
Innanzitutto, crea i campi di etichettatura per la posizione X e Y delle etichette nella tabella dei punti.
Attiva il posizionamento X e Y nelle proprietà del tuo livello.
Crea un nuovo stile "Espressione generatore" nel tuo stile punto, impostalo sul tipo di linea, quindi utilizza le seguenti formule:
make_line (make_point ($ x, $ y), make_point ("LABEL_X", "LABEL_Y"))
Come miglioramento, puoi usare vari campi (o usare un plugin per crearli tutti) per controllare dove sarà il punto di allineamento. È possibile utilizzare un campo di rotazione e un campo di allineamento verticale e orizzontale.
La linea si sposterà di conseguenza sulla posizione dell'etichetta, poiché il suo punto di arrivo è correlato al campo posizione etichetta.
Puoi provare a scaricare e installare il plug-in EasyCustomLabeling da Plugin > Gestisci e installa plug-in , questo crea un livello di memoria duplicato del tuo livello vettoriale selezionato e contiene gli stessi attributi.
( Nota che dovrai anche scaricare e installare il plug-in Risparmio livello memoria per salvare correttamente il livello memoria, questo è descritto nella descrizione del plugin ).
Una volta creato il livello dell'etichetta, puoi giocare con il posizionamento e lo stile dell'etichetta di quel livello per provare a ottenere ciò che stai cercando:
Spero che sia di aiuto!
Per quanto riguarda il metodo di gisinside: il primo passo dell'aggiunta manuale di attributi x / y per le etichette può essere omesso; (forse da QGIS3?) esiste già una variabile ausiliaria per il posizionamento delle etichette. Le variabili sono chiamate di conseguenza: "auxiliare_storage_labeling_positionx" e "auxiliare_storage_labeling_positiony".
Quindi al punto n. 2 puoi usare questa espressione per disegnare linee:
make_line (make_point ($ x, $ y), make_point ("auxitime_storage_labeling_positionx", "auxiliare_storage_labeling_positiony"))
Si noti tuttavia che alle variabili ausiliarie viene assegnato un valore solo se si toccano / si spostano le etichette con lo strumento sposta etichetta. Pertanto, vengono visualizzate solo le righe per le etichette che sono state spostate manualmente.
Se stai usando PostGIS per i tuoi dati spaziali, questo post https://sigsemgrilhetas.wordpress.com/2015/01/12/etiquetas-com-guias-em-qgis-e-postgis-labels-leading-lines-with- qgis-and-postgis / di Alexandre Neto spiega come aggiungere le linee guida ai punti nel database.
È un tutorial ben scritto che vale la pena leggere, ha anche un film nel post che mostra come funziona.
Spero che sia di aiuto.