Interactive manipulation with graph in Matlab

Hi,
I am trying to plot a graph that has a filling underneath it, and a threshold value like a bar that can vary, so that the filling of the areas separated by the threshold is differently colored. I should be able to that by combining the functions "area" and "bar".
I would like to make the graph interactive, namely I would like to see how the graph would look like if the threshold value varies. Basically I am looking for something that is very similar to the "Manipulate" function in Wolfram Mathematica (link for reference):
Any suggestion would be greatly appreciated. Many thanks in advance!

Réponses (2)

Sean de Wolski
Sean de Wolski le 18 Juil 2011

1 vote

Perhaps Doug's Challenge/Replies/Answer will be useful to you:

1 commentaire

Aleksandar
Aleksandar le 18 Juil 2011
Thanks a lot! I also got another idea by using a slider which was the one I was hoping to get, but this one by using the mouse is also very intuitive. I will experiment with both of the approaches and see which one fits better to my needs.

Connectez-vous pour commenter.

You can achieve an effect similar to Mathematica's "Manipulate" by adding a uicontrol to your figure and programming it's Callback property to adjust the graph as needed. This requires some effort, but provides a lot of flexibility. Here is a very simple example:
% Make the plot
a = area( randn(1, 100) );
% Add a slider
uicontrol( ...
'Style', 'slider', ...
'Min', -3, ...
'Max', 3, ...
'Callback', @(src, evt) set(a, 'BaseValue', get(src, 'Value')));

1 commentaire

Aleksandar
Aleksandar le 18 Juil 2011
Thanks a lot, this is exactly what I was looking for! I also got another idea by using the mouse which is also very intuitive. I will experiment with both of the approaches and see which one fits better to my needs.

Connectez-vous pour commenter.

Catégories

En savoir plus sur Creating, Deleting, and Querying Graphics Objects dans Centre d'aide et File Exchange

Question posée :

le 18 Juil 2011

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by