Bắt đầu ngayBắt đầu miễn phí

Trực quan hóa đồ thị đã lọc bằng nxviz

Ở đây, bạn sẽ trực quan hóa đồ thị đã lọc bằng biểu đồ circos. Biểu đồ circos là lựa chọn tự nhiên cho trực quan hóa này, vì bạn có thể nhóm và tô màu các node để thể hiện các phần (partition), trong khi bố cục hình tròn giúp giữ tính thẩm mỹ của biểu đồ.

Bài tập này là một phần của khóa học

Phân tích mạng nâng cao với Python

Xem khóa học

Hướng dẫn bài tập

  • Tính điểm degree centrality cho mỗi node bằng centrality của mô-đun bipartite, nhưng dựa trên degree centrality trong đồ thị gốc.
    • Dùng hàm nx.bipartite.degree_centrality() cho việc này, với các đối số Gnodes=forum_nodes.
  • Tạo một biểu đồ circos mới với các node được tô màu và nhóm (các tham số node_color_bygroup_by) theo nhãn partition ('bipartite'), và được sắp xếp (tham số sort_by) theo degree centrality ('dc'), rồi hiển thị nó.
    • Để đảm bảo các node hiển thị rõ ràng, chúng tôi đã thêm đối số node_enc_kwargs={'radius': 10}.

Bài tập tương tác thực hành trực tiếp

Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.

# Import necessary modules
from nxviz import circos
import networkx as nx
import matplotlib.pyplot as plt

# Compute degree centrality scores of each node
dcs = ____(____, nodes=____)
for n, d in G_sub.nodes(data=True):
    G_sub.nodes[n]['dc'] = dcs[n]

# Create the circos plot: c
c = _____(___, _____, _____, _____, node_enc_kwargs={'radius': 5})

# Display the plot
plt.show() 
Chỉnh sửa và Chạy Mã