Tidak yakin apakah ini duplikat, tetapi dapatkah Anda melihat di gis.stackexchange.com/q/89501/1297 dan gis.stackexchange.com/q/59778/1297 untuk melihat apakah itu membuat Anda lebih dekat dengan apa yang Anda lakukan mencari? Dan kemudian saya pikir itu akan membantu pertanyaan Anda jika Anda memberikan beberapa detail tentang apa yang Anda coba dan mungkin di mana kesalahannya.
SaultDon
Jawaban:
13
Di QGIS 2.6 (mungkin versi sebelumnya juga, saya tidak tahu) Anda bisa melakukan ini di bawah Layer Properties, Labelstab, Renderingbagian. Tentang setengah jalan daftar opsi render adalah tombol yang akan membiarkan Anda menulis ekspresi yang akan menentukan daftar fitur yang sebenarnya akan diberi label. Ekspresi Anda akan seperti "Elevation" IN (1000, 1500). Inilah tombolnya (berwarna kuning), saya hanya mengatur ini untuk memberi label kontur dengan nilai ketinggian 32:
Salah satu pendekatan akan memuat lapisan kontur dan gaya itu. Kemudian muat layer yang sama lagi dan terapkan filter (klik kanan pada layer dan turun ke 'Filter ..') Gunakan ekspresi filter yang mirip dengan yang ditunjukkan pada gambar. Dalam kasus saya, saya ingin kontur utama pada interval vertikal 50 meter dan bidang yang berisi nilai ketinggian disebut "prop_value".
Ketika lapisan yang difilter memperlihatkan kontur utama telah dimuat, terapkan label kontur dan (jika perlu) perkuat gaya garis seperti yang ditunjukkan.
Ekspresi filter:
("prop_value" % 50) = 0
juga akan memilih kontur pada interval vertikal 50 meter. Bekerja dengan database Spatialite, tidak yakin tentang shapefile.
Saya menggunakan pendekatan ini yang membuat pelabelan dan tampilan kontur dengan kondisi cukup mudah.
Saya menggunakan "Properti yang ditentukan data" dari lebar simbol garis dan warna kontur garis dengan ekspresi (lihat tangkapan layar 1) dimana Anda dapat menerapkan lebar garis yang berbeda berdasarkan kondisi khusus dan ekspresi yang sama untuk pelabelan (lihat tangkapan layar 2).
Masukkan saja nilai yang dibutuhkan ke ekspresi dan itu saja.
Yaitu jika Anda ingin menyembunyikan kontur selain 500 m, Anda bisa menggunakan ekspresi ini untuk properti yang ditentukan standar dari simbol garis:
CASE WHEN Elevation / 500 - floor(Elevation / 500) = 0 then
color_rgba(255,255,255,100)
else
color_rgba(255,255,255,0)
end
yaitu untuk pelabelan interval hanya 500 m menggunakan ungkapan ini untuk:
CASE WHEN Elevation /500 - floor(Elevation / 500) = 0 THEN Elevation || ' m' END
yaitu untuk menerapkan lebar garis yang berbeda, gunakan ekspresi seperti ini untuk properti yang ditentukan data:
CASE WHEN Elevation / 100 - floor(Elevation / 100) = 0 THEN
0.25
WHEN Elevation / 50 - floor(Elevation / 50) = 0 THEN
0.15
ELSE
0.1
END
Ekspresi nyaman lain adalah "ELEV" LIKE '%00'(langkah 100m) atau "ELEV" LIKE '%00' OR "ELEV" LIKE '%50'(langkah 50m) atau "ELEV" LIKE '%0'(langkah 10m) dll, di mana "ELEV" adalah bidang elevasi data saya. Opsi kedua hanya berfungsi jika 50 adalah kelipatan interval (10m atau 5m ...).
Jawaban:
Di QGIS 2.6 (mungkin versi sebelumnya juga, saya tidak tahu) Anda bisa melakukan ini di bawah Layer Properties,
Labels
tab,Rendering
bagian. Tentang setengah jalan daftar opsi render adalah tombol yang akan membiarkan Anda menulis ekspresi yang akan menentukan daftar fitur yang sebenarnya akan diberi label. Ekspresi Anda akan seperti"Elevation" IN (1000, 1500)
. Inilah tombolnya (berwarna kuning), saya hanya mengatur ini untuk memberi label kontur dengan nilai ketinggian 32:sumber
Salah satu pendekatan akan memuat lapisan kontur dan gaya itu. Kemudian muat layer yang sama lagi dan terapkan filter (klik kanan pada layer dan turun ke 'Filter ..') Gunakan ekspresi filter yang mirip dengan yang ditunjukkan pada gambar. Dalam kasus saya, saya ingin kontur utama pada interval vertikal 50 meter dan bidang yang berisi nilai ketinggian disebut "prop_value".
Ketika lapisan yang difilter memperlihatkan kontur utama telah dimuat, terapkan label kontur dan (jika perlu) perkuat gaya garis seperti yang ditunjukkan.
Ekspresi filter:
juga akan memilih kontur pada interval vertikal 50 meter. Bekerja dengan database Spatialite, tidak yakin tentang shapefile.
sumber
Saya menggunakan pendekatan ini yang membuat pelabelan dan tampilan kontur dengan kondisi cukup mudah.
Saya menggunakan "Properti yang ditentukan data" dari lebar simbol garis dan warna kontur garis dengan ekspresi (lihat tangkapan layar 1) dimana Anda dapat menerapkan lebar garis yang berbeda berdasarkan kondisi khusus dan ekspresi yang sama untuk pelabelan (lihat tangkapan layar 2).
Masukkan saja nilai yang dibutuhkan ke ekspresi dan itu saja.
Yaitu jika Anda ingin menyembunyikan kontur selain 500 m, Anda bisa menggunakan ekspresi ini untuk properti yang ditentukan standar dari simbol garis:
yaitu untuk pelabelan interval hanya 500 m menggunakan ungkapan ini untuk:
yaitu untuk menerapkan lebar garis yang berbeda, gunakan ekspresi seperti ini untuk properti yang ditentukan data:
sumber
Ekspresi nyaman lain adalah
"ELEV" LIKE '%00'
(langkah 100m) atau"ELEV" LIKE '%00' OR "ELEV" LIKE '%50'
(langkah 50m) atau"ELEV" LIKE '%0'
(langkah 10m) dll, di mana "ELEV" adalah bidang elevasi data saya. Opsi kedua hanya berfungsi jika 50 adalah kelipatan interval (10m atau 5m ...).sumber