Membundel Jaringan Penerbangan Domestik di Indonesia

Tombayu Amadeo Hidayat
Data Sekitar
Published in
5 min readFeb 1, 2021

Beberapa waktu lalu saat berselancar di twitter, saya berkenalan dengan sebuah konsep visualisasi data yang disebut dengan edge bundling. Bayangkan kalau kamu menggambarkan rute jaringan rute pesawat di Indonesia. Jakarta-Surabaya, Jakarta-Makassar, Medan-Pontianak.. Ada begitu banyak, dan kalau kita tarik garis lurus untuk masing-masing pasangan kota tersebut di peta, hasilnya mungkin akan acak adut. Akan banyak garis melintang memotong satu sama lain.

Maka dari itu, ada sebuah teknik visualisasi data yang disebut dengan edge bundling. Garis-garis yang banyak tadi, apabila posisinya berdekatan, akan dicoba digabungkan (dibundel) oleh teknik visualisasi ini. Tujuannya tidak lain dan tidak bukan adalah agar visualisasi data yang acak adut tadi jadi enak di mata, sehingga kita dapat melihat informasi yan terkandung dalam grafik tersebut dengan lebih jelas.

Saya iseng-iseng riset sedikit di Google. Edge bundling awalnya memang digunakan untuk memperbaiki visualisasi di grafik hierarkis, yang menunjukkan hubungan. Lalu, bila kita lihat lagi beberapa contoh penggunaan edge bundling, banyak sekali yang menggunakan teknik ini dalam visualisasi di peta. Yak, peta! Kebetulan ada seorang yang cukup iseng membuat packagenya di R: edgebundle. Saya jadi penasaran ingin coba, karena contoh-contoh yang ditampilkan dalam dokumentasi package-nya sangat menarik. Dan bagi saya, yang paling menarik bila kita berbicara tentang peta adalah pola. Adakah pola spasial yang muncul dari teknik edge bundling ini?

Sebagai sebuah percobaan untuk menjawab pertanyaan itu, saya pun iseng-iseng mencoba package ini untuk memvisualisasikan jaringan rute penerbangan domestik di Indonesia.

Dalam package yang saya pakai, ada 3 macam metode edge bundling: force directed, hammer edge, dan bundle stub. Bedanya apa? Saya tidak tahu, hahaha. Disini saya hanya ingin mencoba memvisualisasikan data spasial dengan metode ini. Makanya saya pun bingung saat mengimplementasikan fungsi dalam package ini, karena ada banyak parameter yang bisa kita sesuaikan, yang kemudian akan mempengaruhi bentuk/pola garis-garis hasil edge bundling tadi.

Lalu apa yang saya lakukan? Looping! Saya pikir, daripada saya coba ubah parameternya satu-satu, lalu lihat hasilnya, lebih baik saya manfaatkan saja teh-no-lohi looping. Dengan menggunakan iterasi for loop sederhana, saya memproduksi dua animasi ini untuk melihat bagaimana efek parameter-parameter yang ada terhadap visualisasi peta yang ingin saya buat.

Efek berbagai parameter dalam fungsi hammer edge di package edgebundle.
Kalau yang ini, pakai fungsi force directed.

Sejujurnya, setelah memproduksi ratusan peta hasil iterasi parameter tadi, saya masih bingung efek dari parameter-parameter itu. Animasi di atas pun kesannya hanya memperlihatkan garis-garis yang bergelinjang di atas peta Indonesia. Tapi secara umum, sepertinya semakin tinggi angka (parameter)nya, garis-garis yang banyak tadi akan semakin terbundel, menjadi satu. Pengecualian ada di fungsi hammer edge, dimana semakin tinggi parameter bw, garis-garisnya terlihat semakin terpisah. Entahlah. Untuk saat ini, saya hanya peduli dengan estetika dan pola: peta mana yang paling cantik? Yang enak dipandang mata, yang bisa memberikan pola spasial yang menarik?

Setelah semua peta yang dihasilkan saya sortir, muncul satu yang paling menarik bagi saya. Peta ini lahir dari fungsi edge hammer.

Koridor penerbangan domestik di Indonesia?

Kalau dilihat dari tebal garisnya, bisa dilihat garis-garis tebal muncul dari kota-kota tertentu: kota-kota di Pulau Jawa, seperti Jakarta, Surabaya, Bandung, Yogyakarta dan Semarang; di bagian barat, yang terlihat paling dominan adalah Batam dan Palembang; di Kalimantan ada Balikpapan; di Sulawesi ada Manado dan tentu saja Makassar, gerbang ke Indonesia bagian timur; juga beberapa kota di Papua, walaupun tebal garisnya tidak begitu dominan. Hipotesis saya, ketebalan garis-garis ini mengindikasikan pentingnya kota-kota tersebut sebagai pusat perekonomian di Indonesia.

Hal menarik lainnya adalah garis panjang yang membentang di peta itu. Garis-garis yang terpilin di peta itu menghasilkan garis panjang dan tebal, yang saya interpretasikan sebagai koridor jalur penerbangan di Indonesia. Ada koridor Sumatra-Jawa dimana Kota Batam sepertinya memainkan peranan penting; koridor Indonesia Timur yang membentang dari Papua hingga Laut Jawa; lalu koridor Jawa-Bali. Semua garis tersebut bertemu di dekat Laut Jawa, sebelum terpecah lagi ke kota-kota besar di pulau itu. Hal ini saya asumsikan menandakan dominansi Pulau Jawa sebagai pusat ekonomi di Indonesia. Bukan hal baru, tapi menarik! (self proclaim) :-)

Oke, edge bundling bisa menghasilkan visualisasi yang menarik di peta. Tapi seberapa efektifkah teknik visualisasi ini? Walaupun visualisasi edge bundling menarik dan dapat menghasilkan pola-pola tersendiri, tapi sangat mungkin ada informasi yang hilang akibat generalisasi informasi yang dilakukan oleh teknik ini. Ada pertanyaan mendasar yang tidak bisa dijawab, misalnya: “Kalau naik pesawat dari Surabaya, kita bisa ke kota mana aja sih?”. Karena garis-garis yang banyak tadi terpilin menjadi satu, hubungan antar kota tidak bisa kita lihat.

Saya menyimpulkan bahwa ada banyak pertanyaan-pertanyaan mendasar yang bisa dijawab secara sederhana. Metode visualisasi data yang fancy, atau mungkin algoritma machine learning yang kompleks, tidak akan bisa menjawab semua pertanyaan. Terkadang kita harus kembali ke dasar. Back to basic. :-)

Back to basic?

Lihat peta di atas. Pertanyaan hirarkis yang saya tanyakan sebelumnya bisa dijawab dengan mudah melalui visualisasi sederhana seperti ini. Bisa kemana aja dari Kota Makassar? Kota mana yang paling penting untuk setiap pulau? Dari mana dan ke mana kebanyakan penerbangan domestik di Indonesia? Kota mana yang berperan sebagai gerbang dari Indonesia bagian barat ke Indonesia bagian timur?

Pada akhirnya: peta mana yang paling cocok buatmu? Silahkan dijawab sendiri :-)

References

Source code
Package
edgebundle oleh David Schoch

Hierarchical Edge Bundles: Visualization of Adjacency Relations in Hierarchical Data

Bonus: jaringan layanan TransJakarta.. di-bundel. Aneh 😛

Aslinya begini..
Setelah pakai edgebundle, hasilnya begini. Kiri: titik-titik biru menandakan halte-halte penting di TransJakarta, yang mungkin ada hubungannya dengan pola yang dihasilkan. Kanan: extreme edge bundling; does not make sense at all..

--

--