Bagaimana cara menggunakan gaya bersarang di QGIS?

10

Bagaimana saya bisa menggunakan gaya bersarang?

Saya menemukan posting Nathan W. "Perbaikan rendering berbasis aturan QGIS" tentang gaya bersarang, tetapi saya tidak mengerti bagaimana cara menggunakannya?

Carlos Pires
sumber
Selamat datang di gis.stackexchange! Harap perhatikan bahwa pertanyaan yang bagus di situs ini diharapkan menunjukkan beberapa tingkat penelitian di pihak Anda, yaitu apa yang telah Anda coba dan - jika berlaku - kode sejauh ini. Untuk info lebih lanjut, Anda dapat memeriksa faq kami .
underdark

Jawaban:

14

Semoga gambar berikut akan sedikit membantu:

Gaya bersarang

Pada dasarnya, Anda bisa memindahkan aturan 'di dalam' yang lain dengan menyeretnya. Ini menciptakan gaya bersarang. Pada gambar, saya menyeret 2 aturan terakhir (biru dan kuning) di dalam aturan hijau. Sekarang jika Anda menambahkan filter (ekspresi) ke aturan hijau dan jika itu berlaku untuk fitur apa pun, fitur tidak hanya akan berubah menjadi hijau tetapi juga dapat berubah menjadi biru dan kuning tergantung pada filter untuk aturan ini.

Jika aturan hijau tidak berlaku untuk fitur apa pun, maka mereka berubah menjadi merah karena aturan merah di luar gaya bersarang. Jadi gaya bersarang hampir dapat dilihat sebagai IF, THEN, ELSEpernyataan standar .

Yusuf
sumber
@CarlosPires - Selamat datang! Semoga bermanfaat =)
Joseph
@Rostranimin - Terima kasih banyak untuk hasil editnya, jauh lebih jelas sekarang :)
Joseph
@ Joseph - selamat datang - Saya datang ke situs untuk menanyakan pertanyaan yang sama dan jawabannya membuat saya hampir mengerti. Posting Nathan sangat membantu dan saya menemukan ini dalam proses juga ... lists.osgeo.org/pipermail/qgis-developer/2012-January/ ... Trial and error membuat saya menyelesaikannya. Jika Anda punya waktu untuk menambahkan gambar dari simbol QGIS on / off kotak centang yang akan sangat membantu.
Rostranimin
1
@Rostranimin - Terima kasih, tetapi saya akan lebih bahagia jika Anda mengirim jawaban (yang harus Anda pertimbangkan) dengan penjelasan Anda dengan gambar yang Anda usulkan mengingat jumlah detail yang Anda tambahkan. Jika Anda mengirim jawaban, saya akan mengembalikan perubahan pada posting ini =)
Joseph
1
@ Joseph - cukup adil. Saya pikir jawaban Anda benar-benar bagus sehingga tidak ingin menambahkan sesuatu yang terasa seperti bersaing - tetapi di sisi lain saya mengerti bagaimana perasaan Anda, terutama setelah gambar besar ditambahkan. Saya akan melakukan yang terbaik untuk segera melakukannya.
Rostranimin
5

Gaya bersarang dimungkinkan untuk gaya berdasarkan aturan. (catatan - Saya belum memeriksa jenis gaya lainnya)

Bukan hanya legenda gaya dan simbologi yang bersarang. Evaluasi aturan gaya juga bersarang.

Untuk mengatur sarang gunakan seret dan lepas.

Misalnya - lihat gambar. Ini untuk dataset dengan bidang yang berjudul 'tinggi' dan 'aliran'. Pengaturan awal, yang saya buat dengan tangan (satu gaya setelah yang lain) mungkin terlihat seperti ini. Perhatikan bahwa saya telah membuat gaya duplikat untuk aliran lebih besar dari / kurang dari 5.

Gambar gaya berdasarkan aturan sebelum bersarang dibuat

Kita akan menggabungkan aturan mengevaluasi aliran dengan aturan mengevaluasi ketinggian. Aturan yang mengevaluasi aliran diseret di atas yang mengevaluasi ketinggian. Jadi aturan 3 dan 4 dalam daftar dijatuhkan di atas aturan 1 - dan tentu saja aturan 5 dan 6 dijatuhkan di atas aturan 2. Kita sekarang memiliki ini (lihat gambar):

Gambar gaya berdasarkan aturan setelah penerapan sarang

Seharusnya jelas bahwa setelah menyeret apa yang kita sebut kategori 'child' ke kategori 'parent' kemudian untuk melihat kategori child (kategori-kategori yang mengevaluasi aliran) Anda perlu memperluas tree style menggunakan kotak +/- kotak kecil yang dapat dilihat di sebelah kiri gaya (gambar).

gambar yang menunjukkan kontrol memperluas styling berdasarkan aturan

Sekarang - kita tidak (pada kesempatan ini) perlu memiliki simbol untuk aturan induknya. Semua case akan dicakup oleh kategori anak (flow akan kurang dari 5 atau lebih besar dari / sama dengan 5) - jadi kita tidak perlu garis hitam. Untuk menyembunyikan ini klik dua kali gaya individu untuk memasuki dialog desain gaya normal. Kemudian kosongkan / hapus centang pada kotak di sebelah kata 'simbol' (lihat gambar).

Gambar menunjukkan cara menyembunyikan gaya induk

Kami pergi dengan gaya yang diatur seperti yang ditunjukkan.

Gambar menampilkan gaya bersarang yang telah selesai

Jadi dalam contoh kita jika 'tinggi'> 2 DAN 'mengalir'> 5 kita mendapatkan garis merah polos - sedangkan jika 'tinggi' <= 2 DAN 'mengalir'> 5 kita mendapatkan garis merah putus-putus.

Gambar menampilkan gaya final

Rostranimin
sumber