Combine 3 fig. graphs in one plot to compare each other

5 visualizaciones (últimos 30 días)
Saba Hajhassan
Saba Hajhassan el 23 de Mzo. de 2023
Editada: Saba Hajhassan el 24 de Mzo. de 2023
Hi, I have three graphs from 3 differnet simulation which represent different resutls. I wanna combine them together in plot, and I have tried differnet ways, but unfortunately I was not successful, I upload these three graphs as screenshots, because they exceed the 5MG limit.
And I appreiciate it if anyone could help me with this problem.
Thanks and have a good day!

Respuesta aceptada

Matt J
Matt J el 23 de Mzo. de 2023
Editada: Matt J el 23 de Mzo. de 2023
Suppose ax is a vector of axes handles to all of your separate plots. Then, you could re-parent the axes to a TiledChartLayout in a new figure,
N=numel(ax);
figure;
T=tiledlayout(N,1);
set(ax,'Parent',T);
for i=1:N
T.Children(i).Layout.Tile=i;
end
  3 comentarios
Matt J
Matt J el 23 de Mzo. de 2023
Editada: Matt J el 23 de Mzo. de 2023
If you have your data as separate arrays, you can just plot them in a single figure in a very basic way using tiledlayout
load matlab.mat
tiledlayout(3,1);
nexttile; plot(K_23);
nexttile; plot(K_25);
nexttile; plot(K_28);
If the idea is to have them all on the same plot, you can instead fo
figure
plot(K_23); hold on
plot(K_25);
plot(K_28); hold off
Saba Hajhassan
Saba Hajhassan el 23 de Mzo. de 2023
Editada: Saba Hajhassan el 24 de Mzo. de 2023
Thank you very much, I really do appreciate it. Yes the second plot was the idea. But the only problem is, if you look at the screenshots that I have uploaded, you will see that the x-axis is a time axis and its the simulation time of 7 seconds but here is something else. Do you know how I can solve this?
One last thing, do you know how I can label the them so I can recognize which graph is for Gain 23 and which one is for Gain 25 and so on?

Iniciar sesión para comentar.

Más respuestas (1)

Jon
Jon el 23 de Mzo. de 2023
You should run each of the simulations keeping the results in local variables stored in the base workspace, and then plot the data using these variables. So for example suppose the results of running the first simulation were kept in the variable t1,x1 the second simulation in t2,x2, and for the third t3,x3 then you could plot the combined results using
plot(t1,x1,t2,x2,t3,x3)
  3 comentarios
Jon
Jon el 23 de Mzo. de 2023
You could also consider keeping the results in arrays rather than naming them t1,x1, t2,x2 etc
Saba Hajhassan
Saba Hajhassan el 23 de Mzo. de 2023
Thanks for your comment, yes i have saved them as array to the workspace and here I uploded them. I am still not able to combine all the three graphs in one. Could you please help me with that? I really appreciate it.

Iniciar sesión para comentar.

Categorías

Más información sobre 2-D and 3-D Plots en Help Center y File Exchange.

Productos


Versión

R2021b

Community Treasure Hunt

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

Start Hunting!

Translated by