แสดงกราฟที่กรองแล้วด้วย nxviz
ในแบบฝึกหัดนี้ จะได้แสดงผลกราฟที่กรองแล้วโดยใช้กราฟ circos ซึ่งเป็นตัวเลือกที่เหมาะสมสำหรับการแสดงผลนี้ เพราะสามารถใช้การจัดกลุ่มและการกำหนดสีของโหนดเพื่อแสดง partition ได้ ในขณะที่เลย์เอาต์แบบวงกลมยังช่วยรักษาความสวยงามของการแสดงผลไว้ด้วย
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การวิเคราะห์เครือข่ายระดับกลางใน Python
คำแนะนำการฝึกหัด
- คำนวณคะแนน degree centrality ของแต่ละโหนดโดยใช้ degree centralities จาก bipartite module แต่อิงตาม degree centrality ในกราฟต้นฉบับ
- ใช้ฟังก์ชัน
nx.bipartite.degree_centrality()โดยส่งอาร์กิวเมนต์Gและnodes=forum_nodes
- ใช้ฟังก์ชัน
- สร้างกราฟ
circosใหม่ โดยกำหนดสีและจัดกลุ่มโหนด (พารามิเตอร์node_color_byและgroup_by) ตาม partition label ('bipartite') และเรียงลำดับ (พารามิเตอร์sort_by) ตาม degree centrality ('dc') จากนั้นแสดงผล- เพื่อให้โหนดมองเห็นได้ชัดเจนเมื่อแสดงผล เราได้เพิ่มอาร์กิวเมนต์
node_enc_kwargs={'radius': 10}ไว้ให้แล้ว
- เพื่อให้โหนดมองเห็นได้ชัดเจนเมื่อแสดงผล เราได้เพิ่มอาร์กิวเมนต์
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
# 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()