matplotlib 动态刷新绘图(最简单的方法)

参考: 在matplotlib中动态更新图

更新二维绘图

import time
import matplotlib.pyplot as plt
import numpy as np
from numpy.random import rand

if __name__ == '__main__':
    # Enable interactive mode.
    plt.ion()
    # Create a figure and a set of subplots.
    figure, ax = plt.subplots()
    # return AxesImage object for using.
    lines, = ax.plot([], [])
    ax.set_autoscaley_on(True)
    # ax.set_xlim(min_x, max_x)
    ax.grid()
    for n in range(600):
        # A template of data generate...
        xdata = np.arange(128)
        ydata = rand(128)

        # update x, y data
        lines.set_xdata(xdata)
        lines.set_ydata(ydata)
        #Need both of these in order to rescale
        ax.relim()
        ax.autoscale_view()
        # draw and flush the figure .
        figure.canvas.draw()
        figure.canvas.flush_events()
        time.sleep(0.01) 

更新图像

import time
import matplotlib.pyplot as plt
import numpy as np
from numpy.random import rand


if __name__ == '__main__':
    imshape = (64,64,3)
    imdata = np.zeros(imshape)
    # Enable interactive mode.
    plt.ion()
    # Create a figure and a set of subplots.
    figure, ax = plt.subplots()
    # return AxesImage object for using.
    im = ax.imshow(imdata)
    for n in range(600):
        # A template of data generate...
        imdata = rand(*imshape)
        
        # update image data
        im.set_data(imdata)
        # draw and flush the figure .
        figure.canvas.draw()
        figure.canvas.flush_events()
        time.sleep(0.01) 

如果对你有帮助, 记得点个赞哦o( ̄▽ ̄)ブ

你可能感兴趣的:(python,python,matplotlib,动态刷新,绘图)