Matplotlib 是 Python 中的一個庫,它是 NumPy 庫的數值數學擴展。 Artist 類包含呈現為 FigureCanvas 的對象的 Abstract 基類。圖中所有可見元素都是 Artist 的子類。
matplotlib.artist.Artist.set_animated() 方法
matplotlib 庫的藝術家模塊中的 set_animated() 方法用於設置藝術家的動畫狀態。
用法:Artist.set_animated(self, b)
參數:此方法接受以下參數。
- b:此參數是布爾值。
返回值:此方法不返回任何值。
以下示例說明了 matplotlib 中的 matplotlib.artist.Artist.set_animated() 函數:
範例1:
# Implementation of matplotlib function
from matplotlib.artist import Artist
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
data = np.array([[1, 2, 3, 4, 5],
[7, 4, 9, 2, 3]])
fig = plt.figure()
ax = plt.axes(xlim =(0, 20), ylim =(0, 20))
line, = ax.plot([], [], 'r-')
annotation = ax.annotate('',
xy =(data[0][0],
data[1][0]))
Artist.set_animated(annotation, True)
def init():
return line, annotation
def update(num):
newData = np.array([[1 + num,
2 + num / 2,
3,
4 - num / 4,
5 + num],
[7, 4,
9 + num / 3,
2, 3]])
line.set_data(newData)
return line, annotation
anim = animation.FuncAnimation(fig,
update,
frames = 25,
init_func = init,
interval = 200,
blit = True)
fig.suptitle('matplotlib.artist.Artist.set_animated()\
function Example', fontweight ="bold")
plt.show()
輸出:
範例2:
# Implementation of matplotlib function
from matplotlib.artist import Artist
import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
fig, ax = plt.subplots()
ax.set_xlim([-1, 1])
ax.set_ylim([-1, 1])
L = 50
theta = np.linspace(0, 2 * np.pi, L)
r = np.ones_like(theta)
x = r * np.cos(theta)
y = r * np.sin(theta)
line, = ax.plot(1, 0, 'ro')
annotation = ax.annotate(
'annotation', xy =(1, 0), xytext =(-1, 0),
arrowprops = {'arrowstyle':"->"}
)
Artist.set_animated(annotation, False)
def update(i):
new_x = x[i % L]
new_y = y[i % L]
line.set_data(new_x, new_y)
annotation.set_position((-new_x, -new_y))
annotation.xy = (new_x, new_y)
return line, annotation
ani = animation.FuncAnimation(
fig, update, interval = 500, blit = False
)
fig.suptitle('matplotlib.artist.Artist.set_animated()\
function Example', fontweight ="bold")
plt.show()
輸出:
注:本文由純淨天空篩選整理自SHUBHAMSINGH10大神的英文原創作品 Matplotlib.artist.Artist.set_animated() in Python。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。