Python Widgets
Python Widgets
import numpy as np
import matplotlib.pyplot as plt
import warnings
warnings.filterwarnings('ignore')
#plot1
y_max = max(para(x, a, b, c))
#plot 1 params
ax.set_title('Parabolic Function: $f(x) = ax^2+bx+c$', fontsize=16)
ax.set_xlabel('$x$', fontsize=16)
ax.set_xlim(min(x), max(x))
ax.set_ylim(-y_max+10,y_max)
ax.grid(True)
plt.setp(ax.get_xticklabels(), fontsize=14)
plt.setp(ax.get_yticklabels(), fontsize=14)
1
#Define plot updater
def update(a,b,c):
line.set_ydata(para(x, a, b, c))
fig.canvas.draw_idle()
return
s1=widgets.FloatSlider(
min=-10,
max=10.,
step=0.25,
value=0.0,
layout=Layout(width='500px'),
description='$b$',
style = {'description_width': 'initial'})
s2=widgets.FloatSlider(
min=-10,
max=10,
step=0.25,
value=0.0,
layout=Layout(width='500px'),
description='$c$',
style = {'description_width': 'initial'})
#Set layout
Vbox_layout = Layout(display='flex', flex_flow='column',␣
,→justify_content='space-between', align_items='center')
#Display output
display(VBox([s0, s1, s2], layout=Vbox_layout))
2
<IPython.core.display.Javascript object>
<IPython.core.display.HTML object>
[ ]: