Gefilterten Graphen mit nxviz visualisieren
Hier visualisierst du den gefilterten Graphen mit einem circos-Diagramm. Das circos-Diagramm ist hierfür ideal, denn über Gruppierung und Farbgebung der Knoten kannst du die Partitionen sichtbar machen, während das kreisförmige Layout die Ästhetik der Visualisierung erhält.
Diese Übung ist Teil des Kurses
Fortgeschrittene Netzwerkanalyse in Python
Anleitung zur Übung
- Berechne die Degree-Centrality-Werte jedes Knotens mit den Degree-Centralities aus dem Bipartite-Modul, basierend auf der Degree Centrality im ursprünglichen Graphen.
- Verwende dafür die Funktion
nx.bipartite.degree_centrality()mit den ArgumentenGundnodes=forum_nodes.
- Verwende dafür die Funktion
- Erstelle ein neues
circos-Diagramm mit Knoten, die nach ihrem Partitionslabel ('bipartite') eingefärbt und gruppiert sind (Parameternode_color_byundgroup_by), nach ihrer Degree Centrality ('dc') sortiert (Parametersort_by) und zeige es an.- Damit die Knoten beim Anzeigen gut sichtbar sind, haben wir das Argument
node_enc_kwargs={'radius': 10}hinzugefügt.
- Damit die Knoten beim Anzeigen gut sichtbar sind, haben wir das Argument
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# 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()