2 votos

¿Utilizar varios colores para el etiquetado que dependen de valores en QGIS?

Me gustaría hacer el etiquetado así (3 filas):

   Location_name
   Time
   People

Mi csv tiene 5 características

   Location_name      Time   AM/PM   People  A/K

Basado en el valor de "AM/PM", quiero que la "Hora" tenga diferentes colores; basado en los valores de "A/K", quiero que la "Gente" tenga diferentes colores.

¿Alguien puede ayudar?

3voto

Derecho Puntos 1122

Puede hacerlo con el etiquetado basado en reglas

Seleccione las propiedades de la capa que está etiquetando y seleccione la opción Labels ficha. En la parte superior, seleccione Rule-based labeling y añadir una regla para cada etiqueta (lugar, hora, personas). Si quieres mostrar una etiqueta para cada elemento de la tabla, simplemente no añadas un filtro a la regla.

rule based labeling

Tendrás que jugar con las propiedades de colocación de cada etiqueta para posicionar las etiquetas de manera que no estén una encima de la otra. En mi ejemplo utilicé una distancia arbitraria de 5 sólo para asegurarme de que las etiquetas no estuvieran una encima de la otra.

label placement

Para obtener el colorido personalizado, vaya a la sección Text al editar la regla, y seleccione el desplegable junto al color y seleccione Edit...

enter image description here

En el Expression String Builder que aparece puedes poner una expresión como la siguiente

if("t/f"='t', color_rgb(0,0,255), color_rgb(255,255,0))

En este ejemplo, tengo una columna que se llama "t/f" y contiene un valor de cadena de 't' o 'f'. Si el valor de la columna es 't', el texto se colorea de azul, y en caso contrario se colorea de amarillo.

Hice esto a una capa de muestra donde tenía valores aleatorios de t o f para colorear las cuerdas. La cadena de visualización es roja o verde, y la segunda cadena de visualización es azul o amarilla.

end result

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X