How to make a 2D plot of a function with an additional parameter, which I can change "live"?

2 vues (au cours des 30 derniers jours)
Hello, guys!
Imagine that we have a simple function y=x+1+C. I'd like to have a 2D plot for x-y and add an additional "bar" to change the parameter "C". Any ideas how I can do it?

Réponses (2)

Jorge Mario Guerra González
there is option to link plot when you open figure
for example:
C=0;
x=1:1:100;
y=x+1;
plot(x,y)
then enable plot linking
linkdata on
Check what happends when you change C value and reassign Y:
C=1000;
y=x+1+C;
It can be enabled from that button as well.
  2 commentaires
John D'Errico
John D'Errico le 23 Jan 2017
One nice thing about Answers is we can all learn something. This is a feature that I did not know existed.

Connectez-vous pour commenter.


Vlad Matjuschkin
Vlad Matjuschkin le 23 Jan 2017
Hi Jorge,
It works, BUT, to change the "C" you need to type
C=1000;
y=x+1+C;
every time.
Let's say, we want to check one hundred values C=1:1:100. We will spend lots of time by typing that again and again ... Is there any other method or app? I simply want "shift" the C-value up and down and see how the function will change.*
*I saw one guy could do it in Excel. He said he installed a special "macro" ... People do it in Maple as well. If excel can do it, why not MATLAB?
  2 commentaires
Jorge Mario Guerra González
Well, typing C=... is just an example, if you are working on a GUI
then add the command
linkdata on %which enables linkdata on your axes.
put that into the callback of the slider. Then instead of typing C, you put something like...
handles.C=get(handles.slider1,'Value');
y=1+x+C;
axes(hanldes.axes1) %Select the axes you want to plot it on
plot(x,y)

Connectez-vous pour commenter.

Community Treasure Hunt

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

Start Hunting!

Translated by