How to make the axis adjust to new plots

1 view (last 30 days)
Anon on 20 Dec 2020
Answered: Cris LaPierre on 24 Dec 2020
In the app designer i have included a plot for projectile motion, however i cant seem to make the axis values adjust when plotting a second graph on top of it- it remains at the limits of the first plot i.e. i cant see the second plot provided the x and y values are greater than the first plot
any help would be greatly appreciated! im pulling my hair out over this!
Anon on 20 Dec 2020
t = linspace(0,tFinal,100) %creates an array of time with 100 elements
x = v0x.*t %calculates the range (x)
y = y0 + v0y.*t+0.5*g*t.^2 %calculates the height (y)
y(y < 0) = 0; %the y-axis cannot go below 0!
comet(app.Graph,x,y,0.1) %plots the projectile as a comet animation
text(app.Graph,x(y==max(y)),y(y==max(y)),'\leftarrow MAX HEIGHT')
sorry about that - first time posting a question!

Sign in to comment.

Answers (2)

Cris LaPierre
Cris LaPierre on 24 Dec 2020
I would add the following to the bottom of your plotting code.
hold(app.Graph,'off') % best practice to always pair hold on with a hold off

Rishabh Mishra
Rishabh Mishra on 24 Dec 2020
Based on my understanding of the issue, I can assume that you are using ‘app.graph’ as axes handle object to create plots over it.
In this case, since the x & y limits of the axes object is not appropriate, you are unable to view the 2nd plot.
To resolve the issue, readjust the x & y limits of the axes handle object ‘app.graph’. The code is given below:
app.graph.XLim = [-20 20]; % example range of values
app.graph.YLim = [-20 20]; % example range
The range of values above should be such that it includes both the plots.
Hope this helps.


Find more on 2-D and 3-D Plots in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!