Estoy tratando de usar las herramientas QGIS Atlas para construir 'mapas de dispersión' de los estudiantes, es decir. Muestre la escuela y los estudiantes que asisten a esa escuela, para 215 escuelas.
La capa de escuelas es la capa de cobertura, y está impulsada por el valor SCHNUM
(número de escuela). Esto está funcionando bien, es decir, está manejando las páginas correctamente.
Sin embargo, ¿cómo puedo mostrar solo entidades de otras capas, en este caso la capa de puntos del alumno, que coinciden con el SCHNUM
valor correspondiente para la entidad actual en la capa de cobertura?
También me gustaría cambiar la capa de cobertura (escuelas) a 'oculta' y usar la misma técnica para mostrar solo la escuela actual desde una capa de escuelas duplicadas.
Hay una presentación disponible aquí que alude al uso de una configuración de regla de representación de capas usando $atlasfeatureid
, pero no puedo entender cómo funciona.
También encontré esta página de seguimiento de errores que muestra que esto funciona, pero nuevamente, no puedo hacer que funcione en mis datos:
Respuestas:
De hecho, debe utilizar la simbología basada en reglas para lograr lo que desea.
Debe crear una regla para lo que desea mostrar y otra regla para todos los demás.
En la regla ELSE, anule la selección de la casilla de verificación del símbolo para hacerlo invisible.
Ocultar otras características de la capa de cobertura
La regla para mostrar solo la característica de atlas actual puede ser la siguiente:
nota : creo que la variable @atlas_featureid es una sintaxis 2.12. Creo que en 2.8.x necesitaría usar una función llamada $ atlas_featureid.
Ocultar características fuera de la función de atlas actual
La receta es la misma que antes, una regla más para ocultar características, una para mostrar.
Para su pregunta particular, parece tener un atributo compartido llamado SCHNUM. En ese caso, la regla puede ser:
en tu caso particular:
Observe la diferencia entre ambos SCHNUM. El primero, entre comillas dobles, representa el valor de cada entidad de capa actual del campo que almacena el código de la escuela. El segundo, entre comillas simples, es una cadena con el nombre de la capa de cobertura que almacena el código de la escuela.
Nota : Nuevamente, creo que la variable @atlas_feature es algo "nuevo", y en 2.8.x necesitará usar la función $ atlas_feature
fuente