View License

Download apps, toolboxes, and other File Exchange content using Add-On Explorer in MATLAB.

» Watch video

Highlights from
Manipulate: Interactive Parametrized Plotting

4.7 | 3 ratings Rate this file 23 Downloads (last 30 days) File Size: 3.87 KB File ID: #36512 Version: 1.0
image thumbnail

Manipulate: Interactive Parametrized Plotting


Mingjing Zhang (view profile)


An interactive plotting tool similar to (with much fewer features) "manipulate" in Mathematica

| Watch this File

File Information

Many Mathematica users love the simple yet powerful command "manipulate". It allows user to interactively change the parameters and watch the graphical results updated in real time. However, to their disappointment, MATLAB does not have a similar function.

Now this m file, written in pure M-script, implements the SIMPLEST functionality of its Mathematica counterpart: The user could plot a parametrized curve, and manipulate as many parameters as he wants, and most importantly, the plot will be updated in REAL TIME as the user drags the slider.

This file makes use of a 'real time' slider. The idea was similar to a previous submission of a real time slider by Matt Jones, but my implementation was performed in a completely different way and no code from that submission was used in my file.

This is just the first installment, so the only thing that you can manipulate is a 2D curve. I plan to expand its functionality to support a greater variety of graphical objects. If you want any other new features added, please let me know.

The way to pass argument to manipulate.m is similar to that in Mathematica, but not quite the same. Please use

help manipulate

for the detailed usage. Or just type in


to watch a demonstration.

Have fun!

(Only partially tested with MATLAB R2012a and R2011a. Please report any bugs and/or inconvenience to help me improve this program.)

MATLAB release MATLAB 7.14 (R2012a)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (3)
06 Nov 2015 XJ

XJ (view profile)

Very useful to me, Thanks!
There are some bugs in this code.
you use persistent variable in 'slider_updater' function, which may cause the 'start(slider_timer(it))' unable to return, especially when mathfunc is complicated. It can be fixed by using a global variable to store last_slider_value.
Actually the last_slider_value is the current state of the parameters, I think there is no need to store the parameters in the line property 'UserData'.
Last, the x value, I think x wouldn't change during the function operation. So it's better to just use it in 'slider_updater' as a global variable rather than retrieving it from the line object.

07 Aug 2015 Qianxi Yang

I have been using Mathematica to manipulate my parametrized plots and jump back to Matlab to continuing my work. This m file is really helpful and the coding is easy to understand. Definitely 5 star!

29 Aug 2013 Hwang

Hwang (view profile)

I saw the code @ilovematlab. Thank u so much.

Contact us