Не удается использовать два интерактивных окна в matplotlib

Нужно показать два интерактивных окна, и в каждом у меня есть два ползунка, но только во втором окне это работает. В первом все ползунки статичны, ничего двигать не получается

from matplotlib import pyplot as plt
import numpy as np
from matplotlib.axes import Axes
from matplotlib.widgets import Slider, RadioButtons

funcs = {
    'sin(x)': lambda x, amp, freq: amp * np.sin(2 * np.pi * freq * x),
    'cos(x)': lambda x, amp, freq: amp * np.cos(2 * np.pi * freq * x)
}
figs = [plt.figure(1), plt.figure(2)]
for i in range(2):
    fig = figs[i]
    fig.subplots_adjust(left=0.25, bottom=0.25)
    fig.suptitle(f"Волна {i + 1}")
    x = np.linspace(0, np.pi * 3, 500)
    ax: Axes = fig.add_subplot(111, xlim=(0, 3 * np.pi), ylim=(-5, 5), yticks=np.arange(-5, 5))
    ax.set_aspect('equal')
    ax.grid(True, which='both')
    line, = ax.plot(x, funcs['sin(x)'](x, 1, 1 / (2 * np.pi)), linewidth=2, color='red')
    amp_slider_ax = fig.add_axes([0.25, 0.15, 0.65, 0.03], facecolor="lightgoldenrodyellow")
    amp_slider = Slider(amp_slider_ax, 'Amp', -5, 5, valinit=1)
    freq_slider_ax = fig.add_axes([0.25, 0.1, 0.65, 0.03], facecolor="lightgoldenrodyellow")
    freq_slider = Slider(freq_slider_ax, 'Freq', 0, 2, valinit=1 / (2 * np.pi))
    func_radios_ax = fig.add_axes([0.025, 0.5, 0.15, 0.15], facecolor="lightgoldenrodyellow")
    func_radios = RadioButtons(func_radios_ax, funcs.keys(), active=0)


    def sliders_on_changed(val):
        line.set_ydata(funcs[func_radios.value_selected](x, amp_slider.val, freq_slider.val))
        fig.canvas.draw_idle()


    def func_radios_on_clicked(label):
        line.set_ydata(funcs[label](x, amp_slider.val, freq_slider.val))
        fig.canvas.draw_idle()


    amp_slider.on_changed(sliders_on_changed)
    freq_slider.on_changed(sliders_on_changed)
    func_radios.on_clicked(func_radios_on_clicked)
plt.show()

Ответы (0 шт):