¿Mostrar solo las funciones seleccionadas en el mapa en QGIS?

28

No estoy seguro de si esta opción existió alguna vez, pero la nueva versión de QGIS esconde muchas cosas en otro lugar y parece tan simple que estoy convencido de que era posible hacerlo antes.

Tengo un conjunto de datos bastante grande con pistas de envío. Ahora quiero analizar las pistas individuales de los barcos (hechas desde la capa de puntos con puntos2). Sin embargo, está tan abarrotada que es difícil mirar las pistas individuales. No quiero guardar cada una de las pistas como una nueva capa, por lo que me pregunto si es posible seleccionar una pista en la tabla de atributos y mostrar solo esa en el mapa / ¿ocultar las otras?

    
pregunta Kristina 26.08.2014 - 20:38

3 respuestas

29

La respuesta de Kadeem evitará que tus funciones sean visibles, pero seguirán estando presentes. Si intentas identificar una pista de barco individual, puedes hacer clic en una función invisible por error. Lo que parece que debes hacer es definir tu capa para que sea como si esas características no existieran. En ArcGIS, esto generalmente se haría usando una consulta de definición, en QGIS el comando equivalente es el subconjunto de capas. Vaya a las Propiedades de su capa, en la pestaña General, en la parte inferior está el cuadro Subconjunto de funciones, haga clic en el botón que se encuentra debajo para abrir el Generador de consultas:

El Generador de consultas lo ayudará a crear una consulta SQL para definir qué características de su capa deberían mostrarse en su proyecto. Cualquier característica que no devuelva la consulta se hace invisible, no solo de forma visual sino también completa (no se eliminan de sus datos, por supuesto, simplemente se definen como obsoletas hasta que elimine la consulta de subconjunto de capas).

    
respondido por el Dan C 27.08.2014 - 18:12
12

Kristina, supongo que hay un atributo en tu tabla que te permite identificar una sola pista. Por ejemplo:

  point_id  |  track_id
------------+------------
     1      |     15
     2      |     15
     5      |     24
     6      |     24
     7      |     24

Si abres la tabla de atributos, puedes encontrar un símbolo épsilon (en la figura de abajo, la cuarta).

Estolepermiteescribirunaexpresión;porejemplo:

"track_id" = 24

Cuando confirmas, se seleccionan todas las filas que satisfacen tu expresión (es decir, todos los puntos que pertenecen a la pista con track_id X). Si luego hace clic en el botón de la lupa, QGIS ampliará su selección en el lienzo del mapa. Las características seleccionadas (puntos en su caso) están resaltadas.

Lo que puedes hacer es aplicar un estilo basado en reglas. Como tal, puede mostrar una pista de barco individual usando un símbolo o marcador dado, y "no mostrar" todos los demás puntos, dándoles un marcador "invisible". La captura de pantalla (parte de Propiedades de capa) a continuación explica cómo funciona:

  • Regla 1: aplique el marcador dado a todos los puntos que tengan un valor de 24 para track_id
  • Regla 2: aplique el marcador dado (un círculo con relleno blanco y borde blanco ...) a todos los puntos que no cumplan un valor de track_id de 24

De hecho, todos los puntos siguen ahí (hacerlos blancos no hará que el renderizado tome menos tiempo), ¡pero al menos tus ojos pueden relajarse!

    
respondido por el kadéem 26.08.2014 - 22:45
12

Esto ahora es posible usando solo selecciones y una simbología basada en reglas.

Esto requiere el complemento Expression Plus (para QGIS 2.x. 3.0 tiene la funcionalidad incorporada).

Cree una simbología basada en reglas con el filtro de:

QGIS 3.0+ (de thequerist en los comentarios):

is_selected()

QGIS 2.12-2.18:

isselected( @layer_name )

O QGIS 2.8:

isselected( 'ACTUAL_NAME_OF_LAYER' )

Ahora solo se mostrarán las funciones seleccionadas que cumplan con esta regla.

También puede tener una regla ELSE para todas las funciones no seleccionadas.

    
respondido por el HeikkiVesanto 13.06.2016 - 17:14

Lea otras preguntas en las etiquetas