在 Matplotlib 中动态更新条形图
要在 Matplotlib 中动态更新条形图,我们可以采取以下步骤 −
- 设置图形大小并调整子图之间和周围的填充。
- 创建一个新图形或激活一个现有图形。
- 列出数据点和颜色。
- 使用 bar() 方法用 data 和 colors 绘制条形图。
- 使用 FuncAnimation() 类,通过重复调用设置条形高度和条形面颜色的函数 animation,制作一个动画。
- 使用 show() 方法显示图形。
示例
import numpy as np from matplotlib import animation as animation, pyplot as plt, cm plt.rcParams["figure.figsize"] = [7.50, 3.50] plt.rcParams["figure.autolayout"] = True fig = plt.figure() data = [1, 4, 3, 2, 6, 7, 3] colors = ['red', 'yellow', 'blue', 'green', 'black'] bars = plt.bar(data, data, facecolor='green', alpha=0.75) def animate(frame): global bars index = np.random.randint(1, 7) bars[frame].set_height(index) bars[frame].set_facecolor(colors[np.random.randint(0, len(colors))]) ani = animation.FuncAnimation(fig, animate, frames=len(data)) plt.show()
输出
广告