De alguma forma, é possível no QGIS conectar etiquetas e pontos com uma linha / seta ou algo assim? No meu mapa, não está claro qual rótulo corresponde ao seu objetivo. Não posso aproximá-lo, porque há muitos outros pontos por vir.
De alguma forma, é possível no QGIS conectar etiquetas e pontos com uma linha / seta ou algo assim? No meu mapa, não está claro qual rótulo corresponde ao seu objetivo. Não posso aproximá-lo, porque há muitos outros pontos por vir.
Respostas:
Primeiro, crie campos de identificação para as posições X e Y de suas etiquetas na sua tabela de pontos.
Ative o posicionamento X e Y nas propriedades da sua camada.
Crie um novo estilo "Expressão do gerador" no seu estilo de ponto, defina-o como tipo de linha e use as seguintes fórmulas:
make_line (make_point ($ x, $ y), make_point ("LABEL_X", "LABEL_Y"))
Como aprimoramento, você pode usar vários campos (ou usar um plug-in para criá-los todos) para controlar onde estará o ponto de alinhamento. Você pode usar um campo de rotação e um campo de alinhamento vertical e horizontal.
A linha se moverá de acordo com a posição da sua etiqueta, pois seu ponto de chegada está relacionado ao campo de posição da etiqueta.
Você pode tentar baixar e instalar o plugin EasyCustomLabeling em Plugins > Gerenciar e instalar plug-ins , isso cria uma camada de memória duplicada da camada vetorial selecionada e contém os mesmos atributos.
( Observe que você também precisará baixar e instalar o plug-in Memory Layer Saver para salvar a camada de memória corretamente, isso é descrito na descrição do plug-in ).
Depois que sua camada de etiqueta é criada, você pode brincar com o posicionamento e o estilo dessa camada para tentar obter o que procura:
Espero que isto ajude!
Em relação ao método por gisinside: a primeira etapa da adição manual de atributos x / y para rótulos pode ser omitida; (talvez desde QGIS3?) já existe uma variável auxiliar para os posicionamentos de etiquetas. As variáveis são chamadas de acordo: "auxiliar_storage_labeling_positionx" e "auxiliarry_storage_labeling_positiony".
Assim, no passo Nr. 2, você pode usar esta expressão para desenhar linhas:
make_line (make_point ($ x, $ y), make_point ("auxiliar_storage_labeling_positionx", "auxiliarry_storage_labeling_positiony"))
Observe, no entanto, que as variáveis auxiliares somente recebem um valor atribuído, se você tocar / mover as etiquetas com a ferramenta mover-etiqueta. Portanto, você só vê linhas para etiquetas que foram movidas manualmente.
Se você estiver usando o PostGIS para seus dados espaciais, este post https://sigsemgrilhetas.wordpress.com/2015/01/12/etiquetas-com-guias-em-qgis-e-postgis-labels-leading-lines-with- qgis-and-postgis / de Alexandre Neto explica como linhas principais podem ser adicionadas aos pontos em seu banco de dados.
É um tutorial bem escrito que vale a pena ler, mas também tem um filme no post que mostra como ele funciona.
Espero que isto ajude.