更新matplotlib条形图? [英] Updating a matplotlib bar graph?
本文介绍了更新matplotlib条形图?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个条形图,可从字典中检索其y值.与其显示所有具有不同值的多个图,而不必关闭每个图,我需要它来更新同一图上的值.有解决方案吗?
I have a bar graph which retrieves its y values from a dict. Instead of showing several graphs with all the different values and me having to close every single one, I need it to update values on the same graph. Is there a solution for this?
推荐答案
下面是一个如何制作条形图动画的示例.
您只调用一次plt.bar
,保存返回值rects
,然后调用rect.set_height
修改条形图.
调用fig.canvas.draw()
会更新图形.
Here is an example of how you can animate a bar plot.
You call plt.bar
only once, save the return value rects
, and then call rect.set_height
to modify the bar plot.
Calling fig.canvas.draw()
updates the figure.
import matplotlib
matplotlib.use('TKAgg')
import matplotlib.pyplot as plt
import numpy as np
def animated_barplot():
# http://www.scipy.org/Cookbook/Matplotlib/Animations
mu, sigma = 100, 15
N = 4
x = mu + sigma*np.random.randn(N)
rects = plt.bar(range(N), x, align = 'center')
for i in range(50):
x = mu + sigma*np.random.randn(N)
for rect, h in zip(rects, x):
rect.set_height(h)
fig.canvas.draw()
fig = plt.figure()
win = fig.canvas.manager.window
win.after(100, animated_barplot)
plt.show()
这篇关于更新matplotlib条形图?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文