Ada pertanyaan serupa di sini di CrossValidated, dan saya telah membaca jawabannya. Pertanyaan saya agak berbeda. Saya tidak ingin hanya memvisualisasikan data saya, dan memang apa yang ingin saya visualisasikan tidak mudah untuk divisualisasikan dengan salah satu paket.
Saya memiliki dua set poin ( koordinat ) pada plot saya. Saya ingin menambahkan tepi dan membuatnya mirip dengan grafik. Jika saya memiliki poin, maka berdasarkan sifat dari masalah saya, saya perlu menambahkan tepi ke plot.n ( n / 2 ) 2
Lalu saya ingin menambahkan beberapa fitur interaktif ke plot saya. Misalnya, dengan mengklik pada satu titik (titik), semua simpul lainnya yang tidak terhubung ke titik yang diklik ini harus menghilang untuk memiliki plot yang lebih jernih dan fokus.
Saya mencoba untuk menemukan paket visualisasi jaringan yang cocok untuk proyek saya, tetapi tampaknya semuanya menggunakan data tentang koneksi tepi atau node dan menyediakan jaringan berdasarkan beberapa algoritma tata letak tertentu. Data saya berbeda. Saya memiliki koordinat titik dan saya ingin membuat beberapa tepi di antara beberapa di antaranya. Dalam data saya, node memiliki lokasi tetapnya sendiri dan tidak boleh dipindahkan.
Akhirnya, saya mempersempit paket ke ggvis
dan ggplot2
. ggvis
baru dan segar selain memiliki desain yang disengaja untuk menghasilkan plot interaktif. Tetapi saya menemukan bahwa itu ggplot2+Shiny
juga dapat menghasilkan plot interaktif. (Apakah itu benar?) Selain itu, saya pikir ggplot2
kemampuannya lebih bervariasi dan lebih matang daripada ggvis
: misalnya ggplot2
memiliki fitur pembesaran sementara ggvis
tidak memilikinya. Lebih penting, seperti ggvis
yang tumbuh dan berubah, saya tidak ingin menginvestasikan banyak waktu pada pekerjaan yang secara teknis usang atau buggy dalam setahun atau lebih. Saya pikir ini terjadi jika saya berdasarkan kode ggvis
.
Sekarang bisakah Anda mengevaluasi pilihan saya ( ggplot2+shiny
) dan memberi tahu saya tentang kemungkinan untuk melakukan apa yang ingin saya lakukan dengannya?
Karena saya tidak tahu paket apa pun yang disebutkan, saya sudah mulai belajar ggplot2
dari buku Wickham dan saya menyukainya! Tetapi saya takut menghabiskan beberapa minggu dan mengetahui bahwa paket luar biasa ini tidak dapat melakukan apa yang ingin saya lakukan bahkan dengan bantuan Shiny
.
PS: Saya ingin meletakkan kode terakhir pada github sehingga pengguna yang mungkin dapat mengunduh dan menjalankannya. Karena itu, saya tidak perlu membuat aplikasi web, tidak perlu situs web apa pun atau meletakkan peta interaktif online. Saya hanya perlu memiliki plot interaktif yang dapat dijalankan dari dalam Rstudio.
sumber
igraph
atau D3?Jawaban:
Yah, berbulan-bulan telah berlalu dari permintaan bantuan ini. Saya menulis jawaban ini atas permintaan saya sendiri untuk membagikan pengalaman saya. Saya belajar
ggplot2
dan kemudianggvis
jugaShiny
.Shiny
dapat bekerja dengan keduanya, tetapi saya menemukanggvis
lebih terstruktur dan jernih dibandingkan denganggplot2
. Sesuatu yang diharapkan sebagai yang pertama sedang dikembangkan berdasarkan pengalaman pengembangan yang terakhir. Selain itu,ggvis
tampaknya jauh lebih cepat daripadaggplot2
dalam pembuatan grafik / grafik cepat, tampaknya jauh lebih cocok untuk 'Shiny' dan membuat applet. Namun, poin negatifnya adalah kurangnya banyak fiturggvis
karena paket sedang dalam pengembangan dan belum menjadi matang.Dan banyak terima kasih untuk komentar di sini. Saya telah memeriksa
Gephi
, itu tidak akan membantu. Saya membuat applet saya yang berfungsi dengan sangat baik, namun akhirnya saya sampai pada titik ini bahwa saya perlu menggunakan alat yang lebih kuat sepertid3js
, seperti yang telah disarankan.sumber
Waktu berlalu! Setelah 2 tahun pengalaman bekerja, sekarang saya menjawab pertanyaan saya sendiri dengan pemahaman yang lebih baik tentang Shiny, R, dan visualisasi interaktif.
Sejauh ini, Plotly adalah jawaban terbaik. Ia dapat dengan mudah digunakan dengan konversi ggplotly () dari plot statis ggplot2, atau secara langsung dengan mempelajari logika di balik fungsi Plotly.
Kasus terakhir disarankan untuk aplikasi dengan beragam plot.
sumber