<div dir="ltr"><br><div class="gmail_extra"><br><div class="gmail_quote">2015-03-24 12:51 GMT+01:00 Mark Bakker <span dir="ltr"><<a href="mailto:markbak@gmail.com" target="_blank">markbak@gmail.com</a>></span>:<br><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">Hello list. I am trying to set the state of a DropdownWidget (Or RadioButton) in IPython3. You didn't have to do that in the past, but even if I specify the value, it gives me an error. Simple example:<div><br></div><div>This works:</div><div><br></div><div><div>def plot_line(c='b'):</div><div>    plt.plot([0,1],color=c)</div><div>interact(plot_line,c=['b','r','g']);</div></div><div><br></div><div>This works in IPython2, but not in IPython3. In IPython3 it passes c=None to the function on initialization.</div><div><br></div><div><div>def plot_line(c='b'):</div><div>    plt.plot([0,1],color=c)</div><div>interact(plot_line,c=DropdownWidget(values=['b','r','g']));</div></div><div><br></div><div>Even when specifying the value, for example</div><div><br></div><div><div>def plot_line(c='b'):</div><div>    plt.plot([0,1],color=c)</div><div>interact(plot_line,c=DropdownWidget(value='r',values=['b','r','g']));</div></div><div><br></div><div>I get an error: KeyError: 'r'.</div><div><br></div><div>Any thoughts on how to set the state when creating a DropwdownWidget (or RadioButtonWidget) using interact? Or is this a bug?</div></div></blockquote><div><br></div><div>Hi, check this:</div><div><a href="http://nbviewer.ipython.org/github/ipython/ipython/blob/master/examples/Interactive%20Widgets/Widget%20List.ipynb">http://nbviewer.ipython.org/github/ipython/ipython/blob/master/examples/Interactive%20Widgets/Widget%20List.ipynb</a><br></div><div><br></div><div>In your example:</div><div><div>w = widgets.Dropdown(<br></div><div>    options=['b', 'r', 'g'],</div><div>    value='r',</div><div>    description='Line Color:',</div><div>)</div><div><br></div><div>def plot_line(c='b'):</div><div>    plt.figure()</div><div>    plt.plot([0,1],color=c)</div><div>interact(plot_line, c = w)</div></div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div><br></div><div>Thanks,</div><div><br></div><div>Mark</div><div><br></div><div><br></div></div>
<br>_______________________________________________<br>
IPython-dev mailing list<br>
<a href="mailto:IPython-dev@scipy.org">IPython-dev@scipy.org</a><br>
<a href="http://mail.scipy.org/mailman/listinfo/ipython-dev" target="_blank">http://mail.scipy.org/mailman/listinfo/ipython-dev</a><br>
<br></blockquote></div><br></div></div>