Plots overlaying each other

13 vues (au cours des 30 derniers jours)
Jennifer Wade
Jennifer Wade le 13 Août 2021
Hi, I've been struggling to get separate figures in one .mlx file. When I specify a figure(x) with hold on/hold off commands, and then start a new figure(x+i) with hold on/hold off, the later figure overlays the earlier one. Here is some sample code to illustrate my issue:
figure(1);
hold on
yyaxis left
title('plot 1')
plot(x,NH2O,'DisplayName','H2O','linewidth',2.0)
xlabel('x/L','fontsize',14,'fontweight','b','fontname','arial')
ylabel('H2O','fontsize',14,'fontweight','b','fontname','arial')
yyaxis right
plot(x,N1,'k-','linewidth',2.0)
plot(x,N2,'linewidth',2.0)
plot(x,N3,'linewidth',2.0)
ylim([0 inf])
ylabel('N','fontsize',14,'fontweight','b','fontname','arial')
legend('H2O','1','2','3')
xlim([0 1])
ylim([0 1])
hold off
figure(2);
hold on
title('plot 2')
xlim([0 1])
ylim([0 15])
xlabel('x/L','fontsize',14,'fontweight','b','fontname','arial')
ylabel('H2O','fontsize',14,'fontweight','b','fontname','arial')
plot(x,N1a, 'linewidth',2.0)
plot(x,N2a, 'linewidth',2.0)
hold off

Réponses (1)

Star Strider
Star Strider le 13 Août 2021
The figure windows are on top of each other. Nothing is replaced. They just have to be moved to different positions.
The new positions are not visible in the online Run application, however they should work in your situation.
Try this —
x1 = 1:10;
y1 = rand(1,10);
figure
plot(x1, y1)
grid
x2 = 1:20;
y2 = randn(1,20);
figure
plot(x2, y2)
grid
fpos = get(gcf,'Position');
set(gcf, 'Position',fpos+[700 -700 0 0])
Experiment to get tifferent results.
.

Catégories

En savoir plus sur App Building 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