Saya tidak yakin subjek masuk ke dalam minat CrossValidated. Anda akan memberi tahu saya.
Saya harus belajar grafik (dari teori grafik ) yaitu. Saya memiliki sejumlah titik yang terhubung. Saya punya meja dengan semua titik dan titik masing-masing tergantung. (Saya juga punya meja lain dengan implikasinya)
Pertanyaan saya adalah:
Apakah ada perangkat lunak yang baik (atau paket R) untuk dipelajari dengan mudah?
Apakah ada cara mudah untuk menampilkan grafik?
r
data-visualization
graph-theory
RockScience
sumber
sumber
Jawaban:
iGraph adalah perpustakaan lintas-bahasa (R, Python, Ruby, C) yang sangat menarik. Ini memungkinkan Anda untuk bekerja dengan grafik yang tidak terarah dan terarah dan memiliki beberapa algoritma analisis yang sudah diterapkan.
sumber
Ada berbagai paket untuk mewakili grafik langsung dan tidak langsung, insiden / adjacency matrix, dll. Selain grafik ; lihat misalnya di tampilan Tugas gR .
Untuk visualisasi dan perhitungan dasar, saya pikir paket igraph adalah yang dapat diandalkan, selain Rgraphviz (pada BioC seperti yang ditunjukkan oleh @Rob). Ketahuilah bahwa agar yang terakhir berfungsi dengan baik, graphviz harus diinstal juga. The igraph paket memiliki algoritma yang bagus untuk menciptakan layout yang baik, seperti graphviz .
Berikut ini adalah contoh penggunaan, mulai dari matriks adjacency palsu:
sumber
Selain dari apa yang telah dikatakan, untuk tugas vusualisasi saja (dan di luar dari R), Anda mungkin tertarik untuk memeriksa Gephi .
sumber
Pilihan lain adalah paket statnet. Statnet memiliki fungsi untuk semua tindakan yang biasa digunakan dalam SNA, dan juga dapat memperkirakan model ERG. Jika Anda memiliki data di daftar tepi, baca data sebagai berikut (dengan asumsi frame data Anda diberi label "edgelist"):
Jika data Anda dalam matriks adjacency Anda mengganti argumen matrix.type dengan "adjacency":
Paket statnet memiliki beberapa kemampuan merencanakan yang sangat bagus. Untuk melakukan plot sederhana cukup ketik:
Untuk skala node berdasarkan sentralitas antar mereka, cukup lakukan:
Secara default fungsi gplot menggunakan algoritma Fruchterman-Reingold untuk menempatkan node, namun ini dapat dikontrol dari opsi mode, misalnya untuk menggunakan MDS untuk penempatan tipe node:
atau untuk menggunakan tata letak lingkaran:
Ada banyak lagi kemungkinan, dan panduan ini mencakup sebagian besar opsi dasar. Untuk contoh yang lengkap:
sumber
Sebuah pertanyaan serupa diminta pada cstheory, juga jika Anda secara khusus tertarik grafik planar , atau visualisasi bibliografi .
Gephi sudah disebutkan di sini, tetapi juga direkomendasikan oleh beberapa orang di cstheory, jadi saya pikir itu adalah pilihan yang baik.
Opsi keren lainnya termasuk:
sumber
Saya menemukan NodeXL sangat membantu dan mudah digunakan. Ini adalah template MS Excel yang menyediakan impor / ekspor grafik, pemformatan tepi / simpul, menghitung beberapa metrik, memiliki beberapa algoritma pengelompokan. Anda dapat dengan mudah menggunakan gambar khusus sebagai simpul.
Alat lain yang membantu saya adalah tata letak Microsoft Automatic Graph yang menyediakan tata letak yang baik dapat dicoba secara online (dengan peramban yang mendukung SVG).
sumber