কম্পিউটার

নেটওয়ার্কএক্স এবং ম্যাটপ্লটলিব ব্যবহার করে মাল্টিপার্টাইট গ্রাফ কীভাবে তৈরি করবেন?


নেটওয়ার্কএক্স,-এ বহুদলীয় গ্রাফ তৈরি করতে আমরা নিম্নলিখিত পদক্ষেপ নিতে পারি -

  • চিত্রের আকার সেট করুন এবং সাবপ্লটগুলির মধ্যে এবং চারপাশে প্যাডিং সামঞ্জস্য করুন৷

  • উপসেট আকার এবং রঙের একটি তালিকা তৈরি করুন।

  • বহুস্তরযুক্ত গ্রাফের জন্য একটি পদ্ধতি সংজ্ঞায়িত করুন যা একটি বহুস্তরযুক্ত গ্রাফ অবজেক্ট ফিরিয়ে দিতে পারে।

  • নোডের রঙ সেট করুন।

  • নোডগুলিকে সরলরেখার স্তরগুলিতে রাখুন।

  • G গ্রাফটি আঁকুন ম্যাটপ্লটলিবের সাথে।

  • সমান অক্ষ বৈশিষ্ট্য সেট করুন।

  • চিত্রটি প্রদর্শন করতে, শো() ব্যবহার করুন পদ্ধতি।

উদাহরণ

import itertools
import matplotlib.pyplot as plt
import networkx as nx

plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True

subset_sizes = [5, 5, 4, 3, 2, 4, 4, 3]
subset_color = [
   "gold",
   "violet",
   "violet",
   "violet",
   "violet",
   "limegreen",
   "limegreen",
   "darkorange",
]

def multilayered_graph(*subset_sizes):
   extents = nx.utils.pairwise(itertools.accumulate((0,) + subset_sizes))
   layers = [range(start, end) for start, end in extents]
   G = nx.Graph()
   for (i, layer) in enumerate(layers):
      G.add_nodes_from(layer, layer=i)
   for layer1, layer2 in nx.utils.pairwise(layers):
      G.add_edges_from(itertools.product(layer1, layer2))
   return G

G = multilayered_graph(*subset_sizes)
color = [subset_color[data["layer"]] for v, data in G.nodes(data=True)]
pos = nx.multipartite_layout(G, subset_key="layer")
nx.draw(G, pos, node_color=color, with_labels=False)

plt.axis("equal")

plt.show()

আউটপুট

নেটওয়ার্কএক্স এবং ম্যাটপ্লটলিব ব্যবহার করে মাল্টিপার্টাইট গ্রাফ কীভাবে তৈরি করবেন?


  1. কিভাবে Python Matplotlib ব্যবহার করে 3D গ্রাফ প্লট করবেন?

  2. নির্বিচারে ডেটা ব্যবহার করে ম্যাটপ্লটলিবের সাথে কীভাবে একটি 4D প্লট তৈরি করবেন?

  3. কিভাবে পাইথনে matplotlib ব্যবহার করে একটি একক পৃষ্ঠায় বেশ কয়েকটি প্লট তৈরি করবেন?

  4. কিভাবে Matplotlib ব্যবহার করে দুটি ডটেড লাইন প্লট এবং মার্কার সেট করবেন?