How to plot multiple graphs in one figure ?
이전 댓글 표시
I have two codes. Each code has four graphs. I want to plot two graphs in one figure. For example: Dead nodes vs Round graph of two should be in one figure. In the same way other graphs also. I tried hold on function but still not getting. How to merge the two codes in order to get the graphs ?
댓글 수: 3
Amit Bhowmick
2021년 6월 29일
Hi sree,
The question is not clear. you can check with following modifications:
Mod: 1
figure (1);
hold
plot(r,STATISTICS.DEAD);
xlabel('Rounds');
ylabel('Dead Nodes');
title('MODLEACH');
%figure (2);
plot(r,STATISTICS.PACKETS_TO_BS);
xlabel('Rounds');
ylabel('Packets to BS');
title('MODLEACH');
%figure (4);
plot(r,STATISTICS.PACKETS_TO_CH);
xlabel('Rounds');
ylabel('Packets to CH')
title('MODLEACH');
%figure (5);
plot(r,STATISTICS.ALLIVE);
xlabel('Rounds');
ylabel('Allive nodes')
title('MODLEACH');
Mod: 2
If you are not getting two curve in a single figure using hold command then try to use it,
if(ishold==0)
hold on;
end
Amanda Liu
2021년 6월 29일
편집: Amanda Liu
2021년 6월 29일

figure(1)
subplot(2,1,1) % 2 rows, 1 column, first position
plot(r,STATISTICS.DEAD);
title('Dead Nodes vs Rounds')
xlabel 'Rounds';
ylabel 'Dead Nodes';
subplot(2,1,2) % 2 rows, 1 column, second position
plot(r,STATISTICS.ALLIVE);
title('Live Nodes vs Rounds')
xlabel 'Rounds';
ylabel 'Live Nodes';
figure(2)
subplot(2,1,1)
plot(r,STATISTICS.PACKETS_TO_BS);
title('Pkts to BS per round')
xlabel 'Rounds';
ylabel 'Pkts to BS ';
subplot(2,1,2)
plot(r,STATISTICS.PACKETS_TO_CH);
title('Pkts to CH per round')
xlabel 'Rounds';
ylabel 'Pkts to CH ';
Nghia Tran
2023년 2월 2일
thank u
채택된 답변
추가 답변 (1개)
Devanuj Deka
2021년 7월 12일
It is my understanding that you want to plot two graphs in one figure. You tried hold on but it didn't work.
It is not clear whether you want both plots in the same graph, or both plots in separate graphs but in the same window. Below are the possible solutions for either of those which you can try. I've taken dead nodes v/s rounds and alive nodes v/s rounds for the plots.
1) hold on, hold off – both dead and alive nodes in the same plot, same figure
figure(1)
plot(r,STATISTICS.DEAD);
hold on;
title('Nodes vs Rounds')
plot(r,STATISTICS.ALLIVE);
xlabel 'Rounds';
ylabel 'Nodes';
hold off;
legend('Dead Nodes','Live Nodes','Location','best');
Documentation: hold
2) subplot – dead nodes and alive nodes in two separate plots, but in the same figure
figure(1)
subplot(2,1,1)
plot(r,STATISTICS.DEAD);
title('Dead Nodes vs Rounds')
xlabel 'Rounds';
ylabel 'Dead Nodes';
subplot(2,1,2)
plot(r,STATISTICS.ALLIVE);
title('Live Nodes vs Rounds')
xlabel 'Rounds';
ylabel 'Live Nodes';
Documentation: subplot
댓글 수: 1
Jonas/Ren
2025년 1월 16일
Can this be done for three separate plots?
카테고리
도움말 센터 및 File Exchange에서 2-D and 3-D Plots에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
