我一直在尝试用两个参数绘制一个函数,这些参数可以变化以查看不同的行为。我想使用滑块来改变参数。
在我的搜索中,我遇到了改变轴但不是数学函数部分的滑块。
因此,如果我的两个参数 Gmax 和 Km 是轴,我有以下代码应该可以工作:
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()
所以我想我的问题是是否有参数命令而不是轴滑块的 ax 命令?或者如果有另一种方法吗?