# Are there options for interactive/dynamic content?

I'm starting to switch over to sage from mathematica, and so far the biggest thing I'm missing is the ability to make interactive applets. I managed to get mplh5canvas up and running. While it's a nice start, It's far from the sort of thing I can do with mathematica.

In mathematica, one can make an interactive sin graph with something like (I forget if the dynamic tag goes with the a or the plot[]):

Slider[Dynamic[a],{0,5}]
Plot[Dynamic[a]*sin[x],{x,-10,10}]


And of course it's even easier with Manipulate[].

How far is Sage from this sort of functionality? I think this sort of thing is immensely helpful to students who just want to explore a function.

If I learn how to effectively use the HTML 5 canvas and javascript, are dynamic plots within reach?

EDIT: Thanks a lot! Interact seems to be what I was looking for.

edit retag close merge delete

Sort by ยป oldest newest most voted

Yes, there is a way to do this, with interact.

For your example, the equivalent in Sage would be (this goes in a notebook cell):

@interact
def interact_sin(a=slider(0, 5)):
plot(a * sin(x), -10, 10).show()

more

1

plot(a * sin(x), -10, 10,ymin=-5,ymax=5).show() looks better.

( 2012-05-29 19:07:14 +0200 )edit

Yeah, but I wanted to make it the same as the poster's example.

( 2012-05-29 19:14:28 +0200 )edit

Yes I understand. My comment was for the OP.

( 2012-05-29 22:41:52 +0200 )edit

There are a few examples on the sagemath.org website. Have a look at the following links

http://wiki.sagemath.org/interact/cal...

http://wiki.sagemath.org/interact/alg...

more