Nyoba2 layouting di Prefuse

Bikin sesuatu yg bernama LevelLayout. Terpaksa dibikin berhubung NodeLinkTreeLayout yang diharapkan tuk bekerja ternyata tidak bekerja. Yaa.. sekalian lah.

Pake data versi lengkap tetep aja lemotubbies. Jadi bikin data versi rada kecil namun komplit. Uh, ini apa emang musti dioptimasi atau emang prefusenya aja yang dodolz?

Oya, sekarang kodingan udah ditaro juga di github. Coba diintip di http://github.com/fajran/ubuntu-pkg-vis-prefuse/tree/master

Memvisualisasikan dependensi paket Ubuntu

Sebelum ngerjain tesis, mari kita pemanasan dulu =P

Gambar di atas adalah cuplikan dari aplikasi kecil yang memvisualisasikan dependensi paket-paket di Ubuntu Intrepid Ibex (mudah2an sih ngga salah menyusun data dependensinya =P) Dibuat pake Java dengan bantuan Prefuse.

Kalau mau nyoba2, silakan donlod aplikasinya lalu coba2 masukkan sebuah nama paket. Kalau udah muncul di layar, klik nama paketnya supaya paket-paket lain yg terhubung ikutan muncul.

  1. Download

    $ wget http://labs.fajran.web.id/p/ubuntu-pkg-vis/ubuntu-pkg-vis-0.1.tar.bz2
    
  2. Extract

    $ tar xjf ubuntu-pkg-vis-0.1.tar.bz2
    
  3. Jalankan

    $ cd p
    $ java -Xmx512M -cp .:prefuse.jar id/web/fajran/vis/ubuntupkg/Main orig/
    

Yayaya.. memang sangat berat! Seluruh data paket dibaca dan masuk ke memory. Selain itu, proses layouting dg Force Directed Layout emang berat, apalagi kalau datanya banyak. Walau sebenarnya diharapkan untuk tidak terlalu berat2 amat berhubung tidak seluruh data ditampilkan. Namun sepertinya Prefuse masih bermasalah dalam hanya-mengutak-atik-data-yang-tampil-saja.

Kalau mau pake subset-tidak-lengkap data yang lebih kecil, coba ganti orig/ menjadi small/

$ java -Xmx512M -cp .:prefuse.jar id/web/fajran/vis/ubuntupkg/Main small/

Contoh paket yang lumayan dapat dilihat dalam data kecil ini adalah pinot, jadi coba cari paket tsb.

Source code? err.. berhubung aplikasi ini beneran tuk icip2 Prefuse, saya gak nyimpen source code nya xD ada sih, tapi udah babak belur di sana sini. Nanti aja kalo saya udah gapé pake Prefuse, saya bikin lagi aja yg baru =P