slider matplotlib para parâmetros
Eu tenho tentado representar graficamente uma função com dois parâmetros que podem ser variados para ver diferentes comportamentos. Eu gostaria de usar um controle deslizante para variar os parâmetros.
Na minha pesquisa, encontrei controles deslizantes que alteram os eixos, mas não partes de uma função matemática.
Então eu tenho o seguinte código que deve funcionar se meus dois parâmetros Gmax e Km forem os eixos:
from matplotlib.widgets import Slider
import numpy as np
Gmax=1
Km= 1
def f(S):
s1 = Gmax*S #G_max
e1 = S + Km #K_m
return divide(s1,e1)
S=arange(0,100,0.1)
ax = subplot(111)
subplots_adjust(left=0.15, bottom=0.25)
l = plot(f(S))
grid(False)
title('Playing with sliders')
xlabel('time')
ylabel('concentration')
axcolor = 'lightgoldenrodyellow'
axGmax = axes([0.15, 0.1, 0.65, 0.03], axisbg=axcolor)
axKm = axes([0.15, 0.15, 0.65, 0.03], axisbg=axcolor)
sGmax = Slider(axGmax, 'Gmax', 0.1, 3.0, valinit=1)
sKm = Slider(axKm, 'Km', 0.01, 1.0, valinit=1)
def update(val):
s1 = Gmax*S * sGmax.val
e1 = S + Km * sKm.val
l.set_ydata(y)
ax.set_ylim(y.min(), y.max())
draw()
sGmax.on_changed(update)
sKm.on_changed(update)
show()
Então, eu acho que a minha pergunta é se existe um comando para os parâmetros em vez do comando ax para os controles deslizantes dos eixos? Ou se existe outra maneira de fazer isso?