¿Evitar que las etiquetas de texto se superpongan con otros marcadores en QGIS?

14

¿Hay alguna forma dentro de QGIS para evitar que las etiquetas de texto se superpongan con los iconos utilizados para etiquetar una capa de puntos?

En el mapa de ejemplo que se muestra a continuación, hay dos capas:

  1. Capa de carreteras que se etiqueta con el nuevo motor de etiquetado.
  2. Una capa de puntos que usa iconos svg para mostrar escudos de carreteras.

Tengo otros casos de uso para esto, como evitar la superposición de iconos de estaciones de ferrocarril. En este ejemplo, podría simplemente mover el punto, sin embargo, en otros casos, como una estación de metro, esa no es una solución viable.

Una posible solución que estoy considerando implicaría:

  1. Agregar una columna al archivo dbf de la capa de puntos.
  2. Llenar la columna agregada con Nulo o un espacio.
  3. Habilitar el etiquetado [nuevo estilo] de QGIS para la columna agregada.

¿Es este el camino a seguir o hay un método mejor?

Mapa de muestra

Información de QGIS: estoy usando las versiones 1.7.4 y una versión compilada recientemente de 1.8 en Mac OS 10.7.4. Las versiones de Linux y Windows también están disponibles para mí.


Actualización de progreso : el método que describí anteriormente funciona aunque se requieren dos modificaciones al proceso.

  1. En lugar de usar un carácter de espacio o un Nulo , se debe usar un espacio que no se rompa . Durante las pruebas que encontré, los campos con Nulo no se representan y los campos con solo un espacio (s) se convierten en Nulo . (Consulte esta página de Wikipedia para obtener información sobre cómo escribir un espacio sin interrupciones ).
  2. Mientras configura la Configuración de etiquetado de capas, en la pestaña Avanzado, establezca la Ubicación en Punto excedido . Establezca también la Prioridad de modo que sea más alta que cualquier otra capa etiquetada.

Dependiendo del tamaño del icono utilizado, puede ser necesario experimentar un poco para que las cosas funcionen como se espera. Dependiendo de las circunstancias, puede ser más fácil usar varios caracteres en lugar de intentar aumentar el peso y / o tamaño de la fuente.

Ejemplo de mapa 2

Probado con QGIS 1.7 y recientemente compilado de 1.8 en Mac OS 10.7.4.

DMan
fuente
1
También puedes responder tus propias preguntas. Me gustaría votar su solución.
oscuro
Puedes hacer la concatenación como lo hice: aquí
jlSta

Respuestas:

8

La mejor solución consistente que tengo hasta ahora es similar a lo que he presentado anteriormente. Suponiendo que se usa un archivo SHP, los pasos son:

  1. Abra el archivo dbf con una aplicación de hoja de cálculo como LibreOffice, Excel o el complemento QGIS Table Manager.
  2. Agregue una columna a la tabla. Si se requiere un tipo de datos, use una cadena.
  3. Rellene las celdas con un espacio que no se rompa . Una vez completado, guarde los cambios. (Consulte esta página de Wikipedia para obtener información sobre cómo escribir un espacio sin interrupciones).
  4. Abra la Configuración de etiquetado de capa para la capa de puntos. En la pestaña Avanzado, establezca la Ubicación en Punto superior y establezca la Prioridad de modo que sea más alta que cualquier otra capa etiquetada.
DMan
fuente
2
En 2.14 ni siquiera necesita agregar una nueva columna, solo ponga '' como etiqueta
raphael
3

Sé que esto es antiguo, pero puede agregar una columna "Coordenada X" y "Coordenada Y" (doble precisión) a la tabla que contiene esa información y luego ir a la pestaña "Configuración de datos definidos" en Etiquetas en las propiedades de la capa y cambiar Coordenada X e Y en consecuencia. Una vez que lo haga, puede mover la etiqueta a mano alzada utilizando el botón mover etiqueta.

Jeff Cameron
fuente
1

Acabo de publicar otra respuesta a un problema similar. El enfoque utiliza símbolos svg en lugar de capas y utiliza la anulación definida de datos para establecer la ruta a un símbolo svg distinto para cada valor de atributo, cp. mi respuesta a Símbolos arriba de las etiquetas en el mapa QGIS

Jochen Schwarze
fuente
0

Podrías experimentar con el desplazamiento de la etiqueta.

Creo que permite que el posicionamiento de la etiqueta sea más dinámico, si lo configuro en 2 mm más o menos.

Colita
fuente
No, no he intentado hacer esto. La razón principal por la que no he alterado el posicionamiento de la etiqueta es porque en otras áreas del mapa (no en la imagen), la red de carreteras es considerablemente más densa. En el ejemplo anterior, mover el icono unos 2 mm (en cualquier dirección) corregiría el problema. Sin embargo, en otras partes del mapa, probablemente empujaría el ícono más profundamente en otra etiqueta.
DMan
Pruébalo, la etiqueta probablemente cambiará a una nueva posición dinámica. Quizás no sea lo que quieres, pero la única forma de averiguarlo es intentarlo. La opción que uso está en la pestaña avanzada de la nueva herramienta de etiqueta (que se encuentra en la barra de herramientas, no en el cuadro de diálogo de propiedades de la capa).
Willy