QGIS’te yalnızca seçilen özellikler haritada mı gösteriliyor?


30

Bu seçeneğin var olup olmadığından emin değilim, ancak yeni QGIS sürümü başka bir yerde çok şey saklıyor ve bu kadar basit görünüyor ki, daha önce bunu yapmanın mümkün olduğuna ikna oldum.

Gemi rayları ile oldukça geniş bir veri setim var. Şimdi bireysel gemi izlerini analiz etmek istiyorum (point2one ile nokta katmanından yapılmış) - ancak, tek tek parçalara bakmak zor olacak kadar kalabalık. Her bir parçayı yeni bir katman olarak kaydetmek istemiyorum, bu yüzden özellik tablosunda bir parça seçip sadece onu haritada gösterip diğerlerini gizlemenin mümkün olup olmadığını merak ediyorum.

Yanıtlar:


33

Kadeem'in cevabı, özelliklerin görünmesini engelleyecektir, ancak tek bir gemi izini tanımlamaya çalışıyorsanız, yanlışlıkla görünmez bir özelliğe tıklayabilirsiniz. Yapmanız gereken gibi görünen şey, katmanınızı tanımlamak, böylece bu özellikler yokmuş gibi. ArcGIS'de bu genellikle bir Tanım Sorgu Sorgulaması kullanılarak yapılır, QGIS'de eşdeğer komut Layer Subset'tir. Katmanınızın Özellikleri'ne gidin, Genel sekmesinin altında, altta Özellik Alt Kümesi kutusu var, Sorgu Oluşturucu'yu getirmek için altındaki düğmeyi tıklayın:

görüntü tanımını buraya girin

Sorgu Oluşturucu, katmanınızdaki hangi özelliklerin projenizde gerçekten gösterilmesi gerektiğini tanımlamak için bir SQL sorgusu oluşturmanıza yardımcı olur. Sorgu tarafından döndürülmeyen tüm özellikler görünmez yapılır, yalnızca görsel olarak değil, tamamen de (verilerinizden silinmezler, tabii ki, yalnızca Katman Alt Kümesi sorgusunu silene kadar varlıklar dışında tanımlanırlar).


Dan, çok teşekkürler !!! Aradığım şey buydu, umduğumdan biraz daha karmaşık, ama hile yapıyor! Çok yararlı, teşekkürler!
Kristina

Cevap IDD. Güzel bahşiş Dan!
kadem

Tuhaf. Bir süre önce bunu yaptım ve işe yaradı. Şimdi tekrar başka bir katmanda yapmak istiyorum ve Özellik Altkısı kutusunun yanı sıra QueryBuilder! Herhangi bir öneri???
Patrick Van Den Noortgaete 12:15

Çözüldü, ancak nedeni belli değil. Yaptığım değişiklikleri kaydettim ve daha sonra QueryBuilder Düğmesi kullanıma sunuldu ...
Patrick Van Den Noortgaete

1
@SimoA. Veri Excel'de ise, dönüştürmek yeni bir alan eklemek, orada filtreyebileceği VALUEiçin 'VALUE',, sonra kopyalayıp bir IN sorgu kullanarak sorgu kutusuna bu alanı yapıştırın.
Dan C,

15

Bu şimdi sadece seçimler ve kural tabanlı bir semboloji kullanılarak mümkündür.

Bu, Expression Plus eklentisini gerektirir (QGIS 2.x. 3.0 için yerleşik bir işleve sahiptir).

Aşağıdakilere filtre uygulayarak kural tabanlı bir semboloji oluşturun:

QGIS 3.0+ (yorumlarda thequerist'ten):

is_selected()

QGIS 2.12-2.18:

isselected( @layer_name )

Veya QGIS 2.8:

isselected( 'ACTUAL_NAME_OF_LAYER' )

Şimdi sadece bu kurala uyan seçilen özellikler gösterilecektir.

Ayrıca, seçili olmayan tüm özellikler için bir ELSE kuralına sahip olabilirsiniz.

görüntü tanımını buraya girin


1
Bu tam olarak aradığım şeydi - bu cevap için teşekkürler
geobar

HeikkiVesanto, bu filtreyi nereye koyacağım?
newGIS

Bir resim ekledim
HeikkiVesanto

1
QGIS 2.18.14 kullanarak ve çalışan ifade seçilidir ('layer_name'). Kullanma (@layer_name) 0 sonuç verdi.
Techie_Gus

2
QGIS 3'te ve inşa edilmiştir, bu özelliğinin üzerinde. Sen altında bulabilirsiniz Record and Attributesiçinde Expression String Builder. Ayrıca, katman adını artık koymanıza gerek yoktur isve ve arasında altını çizmeyi unutmayın selected. Burada QGIS 3 ve üzerinde bir örneği aşağıda verilmektedir: is_selected().
thequerist

12

Kristina, masanda tek bir parça tanımlamana izin veren bir özellik olduğunu varsayıyorum? Örneğin:

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

Özellik tablosunu açarsanız, bir epsilon sembolü bulabilirsiniz (aşağıdaki şekilde, dördüncü).

görüntü tanımını buraya girin

Bu, bir ifade yazmanıza izin verir; Örneğin:

"track_id" = 24

Onayladığınızda, ifadenizi karşılayan tüm satırlar (yani: track_idX ile parçaya ait tüm noktalar ) seçilir. Daha sonra büyüteç düğmesine tıklarsanız, QGIS harita tuvalindeki seçiminizi yakınlaştırır. Seçilen özellikler (durumunuzdaki noktalar) vurgulanır.


Yapabilecekleriniz kural tabanlı bir stil uygulamaktır. Bu şekilde, belirli bir sembol veya işaretleyici kullanarak bireysel bir gemi izini gösterebilir ve onlara 'görünmez' bir işaretçi vererek diğer tüm noktaları 'göstermez'. Aşağıdaki ekran görüntüsü (Katman Özellikleri'nin bir kısmı) nasıl çalıştığını açıklıyor:

  • Kural 1: Verilen işaretçiyi, değeri 24 olan tüm noktalara uygulayın. track_id
  • Kural 2: Verilen işareti (beyaz dolgulu ve beyaz kenarlı bir daire ...) track_id24 değerini karşılamayan tüm noktalara uygulayın

görüntü tanımını buraya girin

Aslında tüm noktalar hala orada (onları beyaz yapmak, görüntüyü daha az zaman harcayamayacak) ama en azından gözleriniz rahatlayabiliyor!


Cevabınız için çok teşekkürler Kadeem! Seçim işlevinin farkındayım ve bu iyi çalışıyor, ancak kelimenin tam anlamıyla küçük bir alanda 500.000 puana sahibim ve aradığım parçaları vurgulamak yeterli değil, harita hala çok kalabalık ve kafa karıştırıcı. Seçilmeyen tüm noktaları ya da onun gibi bir şeyi engelleme ihtimalinin olup olmadığını biliyor musunuz?
Kristina

2
Cevabımı satırın altındaki başka bir seçenekle değiştirdim. Sanırım bu sana yardımcı olacak.
kadem

Kadeem, bu çok basit ama etkili - harika bir fikir, çok teşekkürler!
Kristina
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.