Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Mencipta Plot Taburan Animasi dengan Warna, Saiz dan Kedudukan yang Berubah?
Masalah: Buat plot serakan animasi di mana warna, saiz dan kedudukan mata berubah secara dinamik berdasarkan matriks data yang diberikan.
Format Data:
Objektif: Animasikan plot taburan dengan ciri berikut:
Penyelesaian:
Berikut ialah templat kod yang menunjukkan cara mencipta plot serakan animasi dengan menukar warna, saiz dan kedudukan :
<code class="python">import matplotlib.pyplot as plt import numpy as np import matplotlib.animation as animation # Generate random data numpoints = 50 x, y, s, c = next(data_stream()).T # Create a figure and axes fig, ax = plt.subplots() # Create a scatter plot and set its initial data scat = ax.scatter(x, y, c=c, s=s, vmin=0, vmax=1, cmap="jet", edgecolor="k") # Initialize FuncAnimation ani = animation.FuncAnimation(fig, update, interval=5, init_func=setup_plot, blit=True) # Setup plot def setup_plot(): ax.axis([-10, 10, -10, 10]) return scat, # Data stream generator def data_stream(): xy = (np.random.random((numpoints, 2))-0.5)*10 s, c = np.random.random((numpoints, 2)).T while True: xy += 0.03 * (np.random.random((numpoints, 2)) - 0.5) s += 0.05 * (np.random.random(numpoints) - 0.5) c += 0.02 * (np.random.random(numpoints) - 0.5) yield np.c_[xy[:,0], xy[:,1], s, c] # Update plot def update(i): data = next(data_stream()) scat.set_offsets(data[:, :2]) scat.set_sizes(300 * abs(data[:, 2])**1.5 + 100) scat.set_array(data[:, 3]) return scat,</code>
Coretan kod ini memberikan contoh cara menganimasikan plot taburan dengan menukar warna, saiz dan kedudukan. Anda boleh menyesuaikan penjanaan data dan parameter animasi agar sesuai dengan keperluan khusus anda.
Atas ialah kandungan terperinci Bagaimana untuk Mencipta Plot Taburan Animasi dengan Warna, Saiz dan Kedudukan yang Berubah?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!