問題: 建立動畫散點圖,其中顏色、大小和位置點的數量根據給定的資料矩陣動態變化。
資料格式:
目標: 使用下列功能對散佈圖進行動畫處理:
解決方案:
以下程式碼範本示範如何建立具有不斷變化的色彩、大小和位置的動畫散佈圖:
<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>
此程式碼片段提供如何透過更改顏色、大小和位置對散佈圖進行動畫處理的範例。您可以自訂資料產生和動畫參數以滿足您的特定要求。
以上是如何建立顏色、大小和位置不斷變化的動畫散佈圖?的詳細內容。更多資訊請關注PHP中文網其他相關文章!