3 minute read

Beberapa bulan yang lalu, saya pernah menuliskan tentang tiga cara melakukan visualisasi dari data. Setelah itu, beberapa klien internal di kantor menjadi sering request untuk memvisualisasikan data survey menggunakan sankey diagram.

Namun, setelah didiskusikan lebih lanjut, kebutuhan analisa yang diperlukan sebenarnya lebih tepat jika divisualkan dengan grafik lain.

Kali ini saya akan share satu jenis visualisasi, yakni tree diagram menggunakan library(vtree) di R. Tentunya tree diagram yang saya bahas kali ini bukan termasuk ke dalam regression tree. Sebagai contoh, saya akan menggunakan data survey yang sempat saya tulis di blog ini.

Berikut adalah struktur dari data yang saya gunakan:

str(df_survey)
'data.frame':   365 obs. of  4 variables:
 $ gender: chr  "Wanita" "Pria" "Wanita" "Wanita" ...
 $ ses   : chr  "Low" "Mid" "Mid" "Mid" ...
 $ usia  : chr  "26 - 30 th" "21 - 25 th" "26 - 30 th" "< 15 th" ...
 $ aware : chr  "ya" "ya" "tidak" "tidak" ...

Ada empat variabel utama, yakni:

  1. gender,
  2. ses,
  3. usia, dan
  4. aware.

Skrip dan bentuk visualisasi standar dati vtree adalah sebagai berikut:

vtree(df_survey,"aware gender ses",showlegend=TRUE,sameline=TRUE)

Kita bisa melakukan beberapa modifikasi sebagai berikut:

Hanya menampilkan grafik dengan batas n tertentu

Misalkan saya hendak menampilkan grafik dengan banyaknya responden n \geq 30, maka:

vtree(df_survey,"aware gender ses",showlegend=TRUE,sameline=TRUE,
      prunesmaller=30,
      title = "All responden")

Hanya menampilkan grafik sesuai pilihan

Sedangkan berikut ini adalah skrip untuk menampilkan atau tidak menampilkan grafik tertentu. Misalkan, saya hendak memfilter responden yang tidak aware.

vtree(df_survey,"aware gender ses",showlegend=TRUE,sameline=TRUE,
      prune=list(aware=c("tidak")))

Menghentikan garis grafik pada titik tertentu

Misalkan saya hendak menghentikan garis grafik dari nodes pria.

vtree(df_survey,"aware gender ses",showlegend=TRUE,sameline=TRUE,
      prunebelow=list(gender=c("Pria")))

Atau saya hanya

vtree(df_survey,"aware gender ses",showlegend=TRUE,sameline=TRUE,
      follow=list(gender=c("Pria")))

Hanya menampilkan grafik dari nodes tertentu

Misalkan saya hendak menampilkan pria saja.

vtree(df_survey,"aware gender ses",showlegend=TRUE,sameline=TRUE,
      keep=list(gender=c("Pria")))


if you find this article helpful, support this blog by clicking the ads.