我想使用 python 绘制一个动画振动字符串,但能够播放它并控制振动期间使用的参数(很像这个 Desmos 计算)。到目前为止,这是我的代码:
from __future__ import print_function
import numpy as np
import matplotlib.pyplot as plt
from ipywidgets import interact, interactive, fixed, interact_manual
import ipywidgets as widgets
import matplotlib as mpl
%matplotlib inline
def f(n=1, v=0.2, L=2, t=0):
x = np.linspace(0, L, 2001)
func = np.sin((n*np.pi*x)/L)*np.cos((n*np.pi*v*t)/L)
plt.figure(figsize=(6,6))
ax1 = plt.plot(x, func)
plt.show()
interactive_plot = interactive(f, n=(0, 10, 1), v=(0.2, 5, 0.1), L=(0.2, 2, 0.1), t=(0, 10, 1))
output = interactive_plot.children[-1]
interactive_plot
我可以控制波函数和所有参数,但我不确定什么是最简单的动画方法。
到目前为止,我知道 matplotlib 可以做到这一点,但我想知道我们是否有更直接的方法来制作动画交互式绘图(也许使用另一个包?)。
提前感谢您的帮助。