Bagaimana memvisualisasikan nilai-nilai pengukuran di sepanjang linestrings di QGIS?

12

Saya memiliki serangkaian geometri LineStringM. Nilai ukuran mewakili kemiringan (atau aliran gradien) di setiap titik dalam geometri. Saya suka pilihan gaya QGIS yang kuat, tetapi saya tidak dapat menemukan cara untuk memberikan setiap nilai ukuran di sepanjang linestrings saya. Idealnya, saya akan memiliki biru untuk gradien lambat, dan merah untuk gradien sangat curam.

Untuk membantu memahami apa yang saya coba selesaikan, misalkan kita telah menggunakan Linear Referencing untuk menyandikan panjang LinestringM sejauh ini ke dalam nilai ukuran setiap titik. Di bagian atas, Anda akan memiliki 1,0 dan di bagian bawah, Anda akan memiliki 0,0. Saya telah menambahkan gambar apa yang ingin saya capai di bawah ini. Saya membuat ini di Paint.NET, jadi ini hanya mock-up. masukkan deskripsi gambar di sini tautan langsung ke gambar

Bagaimana Anda bisa menyelesaikan ini di QGIS?

standers
sumber
Jika geometri Anda adalah LineString dan bukan MultiLineString, saya tidak melihat kendala untuk klasifikasi yang sesuai menggunakan bidang dengan nilai kemiringan. Bisakah Anda menambahkan beberapa informasi lagi - apa sebenarnya masalah Anda?
SS_Rebelious
1
Nah, ini adalah pertanyaan khusus untuk QGIS, yang judulnya tidak lagi tercermin. Di QGIS, bagaimana cara menunjukkan nilai Ukur (inheren dalam tipe LinestringM) secara visual? Atribut mudah ditampilkan (misalnya nama geometri, ID-nya, dll). Namun, LinestringM dibuat dari banyak poin, dan masing-masing mungkin memiliki nilai Measure. Saya tidak melihat cara untuk mewarnai linestring dengan nilai ukurannya di sepanjang jalurnya.
standers
@standers Karena Anda memasukkan PostGIStag, pertanyaannya tidak harus spesifik untuk QGIS karena Anda mungkin dapat mengklasifikasikan nilai-M dan membuangnya ke diskrit geometri langsung dari PostGIS. Memilih nits, kurasa.
Scro
@ Scro, terima kasih atas bantuannya. Saya akan lebih membedakan tag saya. Yang sedang berkata, instance QGIS saya membaca dari PostGIS DB saya, dan saya siap untuk melakukan transformasi apa pun di PostGIS yang diperlukan untuk memvisualisasikan LinestringMs saya. Saya harap tag saya lebih masuk akal sekarang, dan saya minta maaf atas kebingungan.
standers
Untuk lebih jelasnya, saya tidak mengkritik tag (atau sama sekali.) Hanya menunjukkan bahwa tag lebih inklusif daripada judul, dan Anda mungkin mendapatkan lebih banyak / jawaban yang lebih baik dengan tidak menjadikannya hanya pertanyaan QGIS.
Scro

Jawaban:

9

Salah satu opsi adalah memuat baris sebagai satu layer dan simpul garis (bisa berupa tampilan pada tabel garis) sebagai layer kedua yang kemudian dapat diberi label. Anda bisa menggunakan ST_M()untuk menulis nilai pengukuran ke atribut tampilan.

Stylingwise, kita harus berurusan dengan tantangan bahwa belum ada gaya garis gradien ...

Tetapi ada mengisi gradien poligon. Jadi kita bisa buffer garis dan gaya buffer. Ini sedikit latihan dalam gaya yang ditentukan data :

masukkan deskripsi gambar di sini

underdark
sumber
Ini tidak akan diinterpolasi dengan lancar di seluruh linestring - mereka akan menjadi titik statis yang diwarnai oleh atribut dari ST_M (). Karena saya hanya butuh bantuan memvisualisasikan hasil, jawaban ini tampaknya menjadi yang terbaik sejauh ini. Saya dapat melepaskan keterampilan photoshop batin saya dan menemukan kombinasi mode campuran yang menarik antara lapisan LinestringM dan lapisan Poin. Kedengarannya seperti tidak ada cara langsung untuk menggunakan nilai Ukur untuk melakukan sesuatu yang mirip dengan gambar gradien aliran di QGIS (belum).
standers
@underdark Penasaran jika QGIS pernah menerapkan style gradient line yang Anda harapkan di posting blog Anda: anitagraser.com/2015/01/11/a-line-gradient-style-hack Saya tidak dapat menemukan apa pun tentang hal itu.
Jon
@ Jon Sejauh ini, ini belum diimplementasikan tetapi harus ada
penyelesaian yang