Effacer les filtres
Effacer les filtres

App Designer Plot Multiple Graph

24 vues (au cours des 30 derniers jours)
Lee Xing Wei
Lee Xing Wei le 27 Avr 2021
Commenté : Subhadeep Koley le 28 Avr 2021
I am new in App Designer, I want to plot multiple graph continue the time, like first time I push the button I get a graph from 0 to t1, then I push the button agian, the graph continue plot from t1 to t2.
The system does not regonize the undeclare t1 as 0, but if I declare t1 = 0, every time I push the button, the graph is overlapping.
function AddButtonPushed(app, event)
if(app.Button_2.Value)
f = 10;
elseif(app.Button2.Value)
f = 15;
elseif(app.Button3.Value)
f = 20;
end
if(app.Button_3.Value)
t = 1;
elseif(app.Button_4.Value)
t = 1/2;
elseif(app.Button_5.Value)
t = 1/4;
end
x = t1:0.0001:t1+t;
y = sin(2*pi*f*x);
t1 = t1+t;
hold(app.UIAxes);
plot(app.UIAxes,y);
hold(app.UIAxes);
end

Réponse acceptée

Subhadeep Koley
Subhadeep Koley le 28 Avr 2021
The attached minimum working example App might help you! Have a look.
  2 commentaires
Lee Xing Wei
Lee Xing Wei le 28 Avr 2021
It works! Thanks! How do you create this section? Is it startupFcn?
properties (Access = public)
t1 = 0;
dt = 1;
f1 = 10;
df = 5;
end
Subhadeep Koley
Subhadeep Koley le 28 Avr 2021
@Lee Xing Wei This is called Public Property. See this link to know more.

Connectez-vous pour commenter.

Plus de réponses (1)

Clayton Gotberg
Clayton Gotberg le 27 Avr 2021
I believe the reason it is overlapping each time is that your plot function only refers to y on each loop. When you only provide the axis argument and one other, it assumes you want them plotted from 1:size(input), so repeated calls would all start at the beginning. Try:
plot(app.UIAxes,x,y);
instead of
plot(app.UIAxes,y);
  2 commentaires
Lee Xing Wei
Lee Xing Wei le 28 Avr 2021
Your answer solve my other problem lol thx! But in this problem is the t1, how do I set the t1 as 0 before I push the button first time, and after I push the button the t1 become 1, second time become 2, so I can get a graph that connected by different time.
Clayton Gotberg
Clayton Gotberg le 28 Avr 2021
For that one, you will need to use a startupFcn in your app. See the tutorial here about giving initial parameters and variables to your app.

Connectez-vous pour commenter.

Catégories

En savoir plus sur 2-D and 3-D Plots dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by