शुरू करेंमुफ़्त में शुरू करें

मैट्रिक्स प्लॉट्स के जरिए विज़ुअलाइज़ करना

अब समय है कि आप अपना पहला "फैंसी" ग्राफ विज़ुअलाइज़ेशन तरीका आज़माएँ: एक मैट्रिक्स प्लॉट। इसे करने के लिए, nxviz एक matrix() फंक्शन देता है। यह फंक्शन, जैसे nxviz के सभी टॉप-लेवल API फंक्शंस, एक matplotlib axes ऑब्जेक्ट लौटाता है जिसे plt.show() से दिखाया जा सकता है.

nxviz ग्राफ़्स को तर्कसंगत तरीके से विज़ुअलाइज़ करने का पैकेज है। अंदरूनी तौर पर, matrix फंक्शन nx.to_numpy_array(G) का उपयोग करता है, जो ग्राफ़ का मैट्रिक्स रूप देता है। यहाँ, हर नोड एक कॉलम और एक रो होता है, और दो नोड्स के बीच एक एज को मान 1 से दर्शाया जाता है। ऐसा करने पर, हालांकि, सिर्फ weight मेटाडेटा सुरक्षित रहता है; बाकी सारा मेटाडेटा खो जाता है, जैसा कि आप एक assert स्टेटमेंट से जाँचेंगे.

संबंधित nx.from_numpy_array(A) NumPy array से तुरंत ग्राफ़ बनाने देता है। डिफॉल्ट ग्राफ़ टाइप Graph() है; अगर आप इसे DiGraph() बनाना चाहते हैं, तो create_using कीवर्ड आर्गुमेंट का उपयोग कर के बताना होगा, जैसे (nx.from_numpy_array(A, create_using=nx.DiGraph)).

एक आख़िरी बात, matplotlib.pyplot और networkx पहले ही क्रमशः plt और nx के रूप में इम्पोर्ट किए जा चुके हैं, और ग्राफ़ T प्री-लोडेड है। सरलता और गति के लिए, नेटवर्क से केवल 100 edges का सब-सैंपल लिया गया है.

यह अभ्यास पाठ्यक्रम का हिस्सा है

Python में नेटवर्क विश्लेषण का परिचय

पाठ्यक्रम देखें

अभ्यास निर्देश

  • nxviz से matrix इम्पोर्ट करें.
  • ग्राफ़ T को मैट्रिक्स प्लॉट के रूप में प्लॉट करें। ऐसा करने के लिए:
    • nv.matrix() फंक्शन में आर्गुमेंट के रूप में T पास करके m नाम का मैट्रिक्स प्लॉट बनाएँ।
    • plt.show() का उपयोग करके प्लॉट दिखाएँ।
  • ग्राफ़ को मैट्रिक्स फ़ॉर्मेट में बदलें, और फिर उसी मैट्रिक्स से उसे NetworkX फ़ॉर्म में एक directed ग्राफ़ के रूप में वापस कन्वर्ट करें। यह आपके लिए कर दिया गया है।
  • जाँचें कि हर नोड से category मेटाडेटा फ़ील्ड खो गया है। यह भी आपके लिए कर दिया गया है, तो परिणाम देखने के लिए 'उत्तर सबमिट करें' दबाएँ!

इंटरैक्टिव व्यावहारिक अभ्यास

इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।

# 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()
कोड संपादित करें और चलाएँ