Cara merepresentasikan distribusi nilai atribut bimodal pada peta

8

Saya mencari metode visualisasi yang memungkinkan saya untuk mewakili distribusi nilai atribut bimodal atau bahkan multimodal pada fitur garis.

Distribusi bimodal memiliki dua mode berbeda yang muncul sebagai puncak berbeda dalam fungsi kepadatan probabilitas (gambar # 1). Nilai tengah, rata-rata dan standar deviasi tidak banyak berguna untuk menggambarkan data tersebut.

# 1 Contoh distribusi bimodal:

Contoh distribusi bimodal
(sumber: wikimedia.org )

Kasus penggunaan saya adalah sebagai berikut: Untuk semua ruas jalan dalam jaringan, saya telah menghubungkan pengukuran kecepatan (ratusan per tautan) dalam distribusi bimodal - terkadang multimodal (tiga mode) -. Sekarang, saya sedang mencari cara untuk memvisualisasikan data ini di peta.

Selain melampirkan diagram batang ke setiap tautan, saya belum menemukan cara untuk mencapai tujuan saya menggunakan GIS. Hasil visualisasi harus dapat dicetak sehingga animasi tidak akan dilakukan.

# 2 Contoh visualisasi menggunakan diagram:

Contoh segmen jalan dengan diagram batang

Semua ide diterima!

underdark
sumber
Apakah Anda menggunakan "modal" dalam konteks perencanaan transportasi atau dalam statistik? Pilihan seseorang dalam moda transportasi adalah skala nominal (mobil, bus atau kereta api) sedangkan panjang tubuh seseorang adalah skala rasio. en.wikipedia.org/wiki/Level_of_measurement
Kirk Kuykendall
1
Modal seperti dalam statistik, maaf saya pikir itu akan menjadi jelas dengan gambar dan deskripsi "distribusi bimodal".
underdark

Jawaban:

4

Salah satu cara Anda menangani hal ini adalah dengan memasukkan data distribusi Anda ke dalam kelas kecepatan, dan menghitung persentase setiap segmen dalam setiap kelas. Lalu, Anda bisa membuat segmen garis paralel dan menskalakan lebar berdasarkan persentase untuk menghasilkan sesuatu seperti ini:

garis kecepatan bimodal

Ini dapat dilakukan dalam GRASS misalnya dengan menggunakan v.parallel( halaman manual ), yang dapat membuat garis paralel di kedua sisi segmen pada jarak yang ditentukan.

Demikian pula, Anda bisa membuat satu segmen garis per pasangan pengukuran kecepatan-garis, dengan level drift kecil ditambahkan ke koordinat. Kemudian, warnai segmen menggunakan kecepatan sebagai atribut. Ini juga dapat diklarifikasi dengan menggunakan transparansi, tergantung pada persyaratan output, menghasilkan sesuatu seperti:

garis offset bimodal

Akhirnya, pendekatan hibridisasi adalah dengan menggunakan gradien warna tunggal di semua segmen garis, dan kemudian menggunakan saluran alpha segmen sebagai representasi distribusi terkompresi. Dengan menggabungkan elemen-elemen itu, Anda akan berakhir dengan dataset yang menggunakan warna untuk mewakili kecepatan, dan kekuatan transparansi untuk mewakili prevalensi nilai dalam segmen:

jalur keluaran bimodal

scw
sumber
Saya pikir ide pertama adalah brilian, tapi saya mengalami kesulitan memvisualisasikan yang kedua berubah menjadi apa pun kecuali abu-abu goop. Apakah Anda tahu contohnya?
Matt Parker 2-10
Saya suka ide itu, tetapi masalah yang saya lihat dalam pendekatan 1 adalah informasi tentang mode tidak digunakan. Karena nampan harus sama untuk semua segmen, dalam beberapa kasus yang akan menyebabkan perpecahan buruk (misalnya membelah satu puncak). Pendekatan 2 terdengar lebih menjanjikan. Tentu saja diperlukan beberapa pra-pemrosesan dan normalisasi untuk bekerja dengan set data besar. Apakah OS GIS mendukung gaya multi-garis seperti yang ditunjukkan pada gambar?
underdark
1
Transparansi memungkinkan Anda melihat kerapatan garis yang sebenarnya - garis yang lebih banyak menghasilkan warna yang lebih buram. Pada dasarnya, itu hanya mencegah massa garis hijau dari mengubah seluruh segmen menjadi bilah hijau solid. Agak aneh dalam aplikasi ini karena tumpang tindih garis disebabkan oleh jittering acak, bukan overplotting yang sebenarnya (bandingkan dengan sebar ini: had.co.nz/stat405/resources/drills/plot-drills/ggplots/… ).
Matt Parker 3-10
1
@underdark: Beberapa opsi untuk multi-stroke: buffer garis pada nilai yang berbeda untuk membuat lebar, lalu warnai setiap poligon secara terpisah. Atau, Anda dapat menulis sedikit python di QGIS dengan simbolizer baru ( qgis.org/wiki/Symbology-NG ). Anda tidak perlu dibatasi hanya 3 segmen, Anda dapat membuat berapa banyak sampah yang Anda inginkan dengan salah satu dari metode ini.
scw
1
Saya telah menyertakan tautan ke v.parallel dalam respons saya, yang seharusnya memberikan cara yang bagus untuk menghitung solusi pertama: membuat segmen garis paralel pada jarak yang sama dengan jumlah, kemudian menyesuaikan ketebalannya dengan alat simbolisasi seperti yang ada di QGIS.
scw
2

Mungkin menggunakan satu set garis paralel lebar tetap yang berdampingan. Setiap baris dapat ditarik untuk mencerminkan besarnya bin yang sesuai (pertimbangkan skala abu-abu: gelap akan menjadi frekuensi tinggi, cahaya akan menjadi kecil). Hasilnya akan muncul agak seperti saluran alpha dari jawaban scw. Akibatnya, Anda mengolesi histogram / kepadatan sepanjang segmen garis areal. Alur kerja kartografi keseluruhan akan agak rumit (karena secara manual atau mengkode offset linier - belum lagi penanganan persimpangan), tetapi akan dapat diterapkan dalam GIS standar. Terlepas dari teknik yang Anda gunakan atau rancang, jika membuat peta yang elegan, silakan bagikan temuan Anda. Semoga berhasil!

(komentar di bawah ini mungkin berguna bagi mereka yang mencoba ide ini)

Glennon
sumber
1
Saya mencoba saran Anda kemarin. Masalah yang saya temui dengan solusi grayscale Anda (akan sangat bagus untuk mencetak) adalah sulit untuk mengartikannya karena hasilnya tergantung pada orientasi garis. Artinya: Terkadang kecepatan tinggi ada di sebelah kiri, kadang di sisi kanan garis. Harus memperkenalkan panah tambahan mungkin, tapi kemudian menjadi sangat penuh.
underdark
1
Terima kasih atas komentarnya. Kamu benar. Directionality adalah masalah. Isyarat visual tambahan dapat dibuat (seperti panah atau garis tipis yang membatasi "jalur cepat"). Pada akhirnya, meskipun, dan pada refleksi lebih lanjut, saya pikir teknik jalur bertingkat mungkin harus diterapkan hanya pada kasus penggunaan sempit ketika jaringan semua mengikuti arah umum yang sama. Semoga diskusi semacam itu membantu orang lain.
glennon
2

Mengapa tidak menggunakan solusi skala abu-abu dari glennon, tetapi minta cermin agar Anda memiliki kecepatan tinggi di kedua sisi garis. Kemudian ketebalan garis yang terlihat akan memberi tahu Anda kecepatan rata-rata, dan garis-garis akan memberi tahu Anda jika ada lebih dari satu mode.

Gambar di bawah ini menunjukkan seperti apa sampel dari pertanyaan akan terlihat dengan garis cermin. Saya menggunakan garis hitam dengan opacity pada gambar kiri, dan garis kode warna dengan opacity di sebelah kanan.

Saya menambahkan beberapa gamma (2) ke opacity sehingga puncak lebih menonjol.

Garis abu-abu dan garis warna lebar tetap cermin http://img23.imageshack.us/img23/4920/mirrored.png

mkadunc
sumber
Lebar garis tidak akan berubah. Glennon menyarankan garis lebar tetap. Mencerminkan garis akan menggandakan lebar garis yang sudah sangat lebar sehingga tidak memungkinkan untuk memvisualisasikan luasan jaringan yang lebih besar. Juga, saya pikir ini akan sangat sulit untuk ditafsirkan.
underdark
+1 Terima kasih atas gambar-gambar tambahan. Untuk data yang berbeda, pendekatan ini mungkin berhasil. Seperti yang ditunjukkan gambar 2 di pertanyaan saya, saya ingin bekerja dengan kira-kira. 10 nampan atau - jika mungkin - hindari "binning" semua data.
underdark
Gambar saya sebenarnya menggunakan distribusi dari gambar # 2 dalam pertanyaan Anda. Hanya untuk mengklarifikasi masalah Anda - jika Anda harus memutuskan (misalnya dalam jaringan besar, di mana tidak mungkin untuk menampilkan semua informasi) untuk mengurangi distribusi ke satu variabel, apakah Anda lebih suka jumlah puncak, kecepatan rata-rata , kecepatan puncak (yaitu yang dengan puncak tertinggi), atau yang lainnya?
mkadunc
Solusi favorit saya adalah jumlah puncak, kecepatan puncak itu dan mungkin beberapa informasi tentang lebar puncak. Jika saya harus memilih hanya satu variabel, kemungkinan besar saya akan pergi untuk kecepatan puncak ... Kecepatan rata-rata adalah apa yang saya miliki sekarang, tetapi saya ingin mengubah dari itu.
underdark
0

Silverlight (dan mungkin flex) mendukung simbol garis animasi. Anda bisa membuat garis putus-putus di mana garis putus-putus bergerak di sepanjang garis berdasarkan kecepatan, dan lebar menunjukkan volume lalu lintas. Saya belum pernah melihat standar kartografi yang disarankan untuk simbol animasi, tetapi mungkin ada beberapa.

Kirk Kuykendall
sumber
Sebenarnya, saya tidak melihat bagaimana hal itu memungkinkan untuk memvisualisasikan distribusi bimodal pengukuran kecepatan. Garis paralel, satu per puncak dalam distribusi ... terdengar berantakan.
underdark