ম্যাটপ্লটলিবের সাথে স্ক্যাটারপ্লট অ্যানিমেশনগুলি সংরক্ষণ করতে, আমরা নিম্নলিখিত পদক্ষেপগুলি নিতে পারি -
- চিত্রের আকার সেট করুন এবং সাবপ্লটের মধ্যে এবং চারপাশে প্যাডিং সামঞ্জস্য করুন।
- চারটি ভেরিয়েবল, ধাপ, নোড, অবস্থান এবং সমাধান শুরু করুন।
- তালিকায় অবস্থান এবং সমাধান মান যোগ করুন।
- একটি চিত্র এবং সাবপ্লটের একটি সেট তৈরি করুন।
- মার্কারের আকারের জন্য একটি পরিবর্তনশীল শুরু করুন।
- গ্রিড লাইন কনফিগার করুন।
- একটি ফাংশন বারবার কল করে একটি অ্যানিমেশন তৈরি করুন *অ্যানিমেট *, অক্ষ পরিষ্কার করতে, নতুন অক্ষের সাবলট যোগ করুন এবং অক্ষে প্লট স্ক্যাটার পয়েন্টগুলি যোগ করুন।
- অ্যানিমেটেড স্ক্যাটার প্লটটিকে একটি .gif হিসাবে সংরক্ষণ করুন ফাইল।
উদাহরণ
import matplotlib.pyplot as plt
import matplotlib.animation as animation
import numpy as np
plt.rcParams["figure.figsize"] = [7.50, 3.50]
plt.rcParams["figure.autolayout"] = True
steps = 50
nodes = 100
positions = []
solutions = []
for i in range(steps):
positions.append(np.random.rand(2, nodes))
solutions.append(np.random.random(nodes))
fig, ax = plt.subplots()
marker_size = 50
def animate(i):
fig.clear()
ax = fig.add_subplot(111, aspect='equal', autoscale_on=False, xlim=(0, 1), ylim=(0, 1))
ax.set_xlim(0, 1)
ax.set_ylim(0, 1)
s = ax.scatter(positions[i][0], positions[i][1], s=marker_size, c=solutions[i], cmap="RdBu_r", marker="o", edgecolor='black')
plt.grid(b=None)
ani = animation.FuncAnimation(fig, animate, interval=100, frames=range(steps))
ani.save('animation.gif', writer='pillow') আউটপুট
