8 votos

¿Mostrar el recuento de características para la extensión del diseño en la leyenda usando QGIS?

Estoy usando QGIS 3.6.1 en Win10.

Tengo un diseño de impresión con un mapa de un área dentro de mi trabajo total del conjunto de datos.

Puedo añadir un elemento para el diseño de impresión de la leyenda con la suma botón de "Mostrar la característica de contar para cada clase de la capa de vector." Espero que esta para mostrar el recuento de las características visibles en el diseño de la extensión del mapa. En su lugar, se muestra el recuento total para el conjunto de datos completo.

Es allí una manera de contar los datos en el diseño del mapa de las extensiones y mostrar esto en la leyenda?

11voto

nuecaster Puntos 128

Yo esperaría que la opción de "filtro leyenda del mapa de contenido" que causa el "filtro de la cuenta" a limitarse a las características dentro de la extensión del mapa. Pero tienes razón, la función "count" es que no se filtra por la extensión del mapa.

enter image description here

Este parece un error, así que he hecho un informe de error. Visita el informe de error de la página para comprobar el estado de tener este error solucionado, pero no se espera que ocurra inmediatamente. Este es un bonito tema menor y la QGIS devs tienen mucho en sus platos. En el ínterin, pruebe la solución siguiente.

Cómo utilizar expresiones en un elemento de etiqueta para mostrar un recuento de las características dentro de la extensión de mapa:

Esta expresión devuelve la extensión del mapa como un polígono: map_get(item_variables( 'Map1'),'map_extent'), donde Map1 es el Id del mapa. Usted tiene que definir el Id del elemento del mapa en el Elemento del panel de propiedades.

enter image description here

El uso de la aggregate(count) función para contar los puntos en una categoría determinada que cruzan la extensión del mapa. En el ejemplo siguiente se encargará de contar los puntos en el mapa de lona que tiene el valor de "Grupo a" en su campo "categoría".

aggregate( 'New scratch layer','count',"category","category"='Group A' AND intersects($geometry,map_get(item_variables( 'Map1'),'map_extent')))

Repita el procedimiento para cada categoría.

enter image description here

Nota: Si desea que un simple (uncategorized) recuento de todas las características en el mapa, el uso de esta expresión: aggregate('New scratch layer','count',"category",intersects($geometry,map_get(item_variables( 'Map1'),'map_extent')))

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