如何更新for循环中的图形

时间:2017-11-09 23:24:26

标签: python animation graph updating

我正在尝试创建一个动画,其中黄色点和绿线由于b在穿过for循环时的变化而移动。如果我继续关闭它运行的图形,点和线移动,但是我想自动执行此操作,以便在不必按下关闭按钮的情况下发生。我已经研究过pet.ion()和time.sleep()但是我无法创建正确的安排来使它工作。

x =lag_range
count = 0
plt.subplot(311)
plt.ion()
plt.subplot(312)
plt.subplot(313)
plt.ion()

for b in x:

    plt.subplot(311)
    plt.plot(x,pear_corr, color='b', linewidth=1.5, label ='Pearson')
    plt.plot(x,spear_corr, color ='r', linewidth=1.5, label='Spearman')
    plt.plot(x[count],pear_corr[count],'yo')
    plt.legend()    
    axes = plt.gca()
    plt.ylabel('Correlation coefficients')
    plt.xlabel('Lag times /days')
    axes.set_xlim([min(lag_list),last])
    axes.set_ylim(-1,1)

    plt.subplot(312)
    plt.plot(x,pear_p_values, color='b', linewidth=1.5)
    plt.plot(x,spear_p_values, color ='r', linewidth=1.5)   
    axes = plt.gca()
    plt.ylabel('P values')
    plt.xlabel('Lag times /days')
    axes.set_xlim([min(lag_list),last])

    plt.subplot(313)
    ax1 = plt.subplot(313)
    x_for_p = range(len(x_prices))
    ax1.plot(x_for_p, x_prices, color ='grey', linewidth=1.5)
    ax1.set_ylabel('Share price', color ='grey')
    ax1.tick_params('y', colors='grey')
    ax1.set_xlabel('Days')
    axes = plt.gca()
    axes.set_xlim([min(lag_list),(2*last)])

    ax2 = ax1.twinx()
    x_for_den = range(b,(b+len(x_prices)))
    ax2.plot(x_for_den, y_planes, color='g', linewidth=1.5)
    ax2.set_ylabel('Plane density', color='g')
    ax2.tick_params('y', colors='g')

    count += 1
    plt.show()
    time.sleep(2)



cross_corr2_vis(prices, density_p3)

0 个答案:

没有答案