为了账号安全,请及时绑定邮箱和手机立即绑定

如何为子图中的数字设置动画?

如何为子图中的数字设置动画?

智慧大石 2021-06-06 10:42:35
我写了一个代码来解释波浪的叠加。我在下面粘贴我的代码和输出。但问题是我只创建静态图......如果我可以为波浪设置动画(在我的代码中:)subplot(211)并且对应的结果在subplot(212). 但到目前为止,我只能在没有子图的情况下制作动画……当我在互联网上研究“使用子图制作动画matplotlib”时,我发现结果不太好理解,在这种情况下也与我的代码不同。任何人都可以在这方面帮助我吗?如果动画基于我的以下代码结构会更好(当然,对子图动画进行必要的更改是值得赞赏的)。谢谢你们。我的代码#Composition of Wavesimport matplotlib as mplmpl.rc('text', usetex = True)mpl.rc('font', family = 'serif')import matplotlib.pyplot as pltimport numpy as npplt.gca().set_aspect('equal', adjustable='box')plt.style.use(['ggplot','dark_background'])title = 'Composition of Waves'#Parameters:#a=Amplitude; w=Angular Frequency; phi = Phase Angle.#Definition of the function:def f(t,a,w,phi):     y = a*np.sin(w*t + phi)    return yt = np.arange(0,4*np.pi,0.001)def create_plot(ptype):    y1 = f(t,1,1,1)    y2 = f(t,2,2,2)    y = y1 + y2    if ptype == 'waves':        plt.plot(t, y1, label='$y=f_1(t)$')        plt.plot(t, y2, label='$y=f_2(t)$')    elif ptype == 'composition':        plt.plot(t, y, label='$Composition$', color= 'm')plt.figure(1)plt.subplot(211)                                  create_plot('waves')plt.legend()plt.legend(loc='center left', bbox_to_anchor=(1, 0.5))#plt.xlabel('$x$')plt.ylabel('$y$')plt.title(title)plt.subplot(212)create_plot('composition')plt.legend()plt.legend(loc='center left', bbox_to_anchor=(1, 0.5))plt.xlabel('$t$')plt.ylabel('$y$')# Tweak spacing between subplots to prevent labels from overlappingplt.subplots_adjust(hspace=0.5)plt.savefig('composition_Waves.eps', format='eps', dpi=1000,bbox_inches='tight')plt.show()输出在这里,我想以不同的w和phi.
查看完整描述

1 回答

  • 1 回答
  • 0 关注
  • 117 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信