MulaiMulai sekarang secara gratis

Visualisasi menggunakan plot Matriks

Sekarang saatnya mencoba metode visualisasi grafik "mewah" pertama Anda: plot matriks. Untuk ini, nxviz menyediakan fungsi matrix(). Fungsi ini, seperti semua fungsi API tingkat atas milik nxviz, akan mengembalikan objek axes matplotlib yang dapat ditampilkan dengan plt.show().

nxviz adalah paket untuk memvisualisasikan grafik secara rasional. Di balik layar, fungsi matrix memanfaatkan nx.to_numpy_array(G), yang mengembalikan bentuk matriks dari grafik. Di sini, setiap node merepresentasikan satu kolom dan satu baris, dan sebuah edge antara dua node ditandai dengan nilai 1. Namun, dalam proses ini hanya metadata weight yang dipertahankan; semua metadata lain hilang, sebagaimana akan Anda verifikasi menggunakan pernyataan assert.

Fungsi terkait nx.from_numpy_array(A) memungkinkan Anda membuat grafik dengan cepat dari array NumPy. Jenis grafik default adalah Graph(); jika Anda ingin menjadikannya DiGraph(), hal tersebut harus ditentukan menggunakan argumen kata kunci create_using, misalnya (nx.from_numpy_array(A, create_using=nx.DiGraph)).

Catatan terakhir, matplotlib.pyplot dan networkx telah diimpor sebagai plt dan nx, masing-masing, dan grafik T telah dimuat sebelumnya. Untuk kesederhanaan dan kecepatan, kami hanya mengambil sampel 100 edge dari jaringan.

Latihan ini adalah bagian dari kursus

Pengantar Analisis Jaringan di Python

Lihat Kursus

Petunjuk latihan

  • Impor matrix dari nxviz.
  • Plot grafik T sebagai plot matriks. Caranya:
    • Buat plot matriks bernama m menggunakan fungsi nv.matrix() dengan T sebagai argumen.
    • Tampilkan plot menggunakan plt.show().
  • Konversikan grafik ke format matriks, lalu konversikan kembali grafik tersebut dari matriks ke bentuk NetworkX sebagai directed graph. Bagian ini sudah dilakukan untuk Anda.
  • Periksa bahwa bidang metadata category hilang dari setiap node. Bagian ini juga telah dilakukan untuk Anda, jadi klik 'Kirim Jawaban' untuk melihat hasilnya!

Latihan interaktif praktis

Cobalah latihan ini dengan menyelesaikan kode contoh berikut.

# Import nxviz
____

# Create the matrix plot: m
m = ____

# Display the plot
____

# Convert T to a matrix format: A
A = nx.to_numpy_array(T)

# Convert A back to the NetworkX form as a directed graph: T_conv
T_conv = nx.from_numpy_array(A, create_using=nx.DiGraph())

# Check that the `category` metadata field is lost from each node
for n, d in T_conv.nodes(data=True):
    assert 'category' not in d.keys()
Edit dan Jalankan Kode