Clear Filters
Clear Filters

Avoid overlapping different graphs that are placed in the same positions

5 views (last 30 days)
Hello, I'm currently trying to plot two graphs in App Designer at the same position. They keep overlapping themselves and I'm not sure how to fix this issue. When I do "hold on" and "hold off", it opens another window where the graphs are shown. Is there any way to acheive this?
  2 Comments
Norma
Norma on 9 May 2024
This is example code. I'm unable to send a screenshot. I did two graphs like this in the same position.
lat = [48.915 48.907 48.901 48.893 48.887 48.881 48.875 48.869 48.865];
lon = [10.192 10.188 10.182 10.171 10.166 10.165 10.167 10.173 10.184];
gx = axes(app.FlightDataAppUIFigure);
Plot_XY_Data(lat, lon, gx);
function Plot_XY_Data(lat, lon, gx)
set(gx, 'position', [0.55 0.59 0.3 0.3]);
plot(gx,lat, lon, 'r--');
end

Sign in to comment.

Answers (1)

Kevin Holly
Kevin Holly on 9 May 2024
You need to specify the axes you want to hold. By default, the hold command target the current axes that can be called with gca.
hold(app.UIAxes,"on")
  2 Comments
Norma
Norma on 9 May 2024
I'm using geoaxes and stored it in a variable named gx. The texts for the graphs still overlap even though the graph itself isn't overlapping.
Kevin Holly
Kevin Holly on 9 May 2024
What do you mean by the "texts for the graphs still overlap"? I'm not sure if I understand with the code you provided. Are you just trying to add another plot line as shown below?
lat = [48.915 48.907 48.901 48.893 48.887 48.881 48.875 48.869 48.865];
lon = [10.192 10.188 10.182 10.171 10.166 10.165 10.167 10.173 10.184];
fig = uifigure; % I changed this to uifigure for testing purposes.
gx = axes(fig);
Plot_XY_Data(lat, lon, gx);
% Add second plot
hold(gx,"on")
lon = lon + 0.05;
Plot_XY_Data(lat, lon, gx);
function Plot_XY_Data(lat, lon, gx)
set(gx, 'position', [0.55 0.59 0.3 0.3]);
plot(gx,lat, lon, 'r--');
end

Sign in to comment.

Community Treasure Hunt

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

Start Hunting!