# -*- coding: utf-8 -*- import numpy as np import matplotlib.pyplot as plt from matplotlib.widgets import Slider mu = 1e-19 kb = 1.381e-23 def MB(x,T): return np.exp(-(x-1)/(kb*T/mu)) def MF(x,T): return 1/(np.exp((x-1)/(kb*T/mu))+1) x = np.linspace(0,2,500) ## fig, ax = plt.subplots(figsize=(8,8)) T = np.arange(0, 1000, 1) initial_amp = 200 B = MB(x,initial_amp) F = MF(x,initial_amp) l, = plt.plot(x, B, lw=2 ,color="cornflowerblue") d, = plt.plot(x, F, lw=2 ,color="limegreen") plt.ylim(-0.1,5) plt.xlabel("E/mu",fontsize=20) plt.ylabel("",fontsize=20) #ax = plt.axis([0,TWOPI,0,TWOPI]) axamp = plt.axes([0.25, .9, 0.50, 0.02]) # Slider samp = Slider(axamp, 'T', 0, 1000, valinit=initial_amp,color='plum') def update(val): # amp is the current value of the slider amp = samp.val # update curve l.set_ydata(MB(x,amp)) d.set_ydata(MF(x,amp)) # redraw canvas while idle fig.canvas.draw_idle() # call update function on slider value change samp.on_changed(update) plt.show() plt.show()