How to plot and print two graphs in a same page?
13 views (last 30 days)
Show older comments
ANANTA BIJOY BHADRA
on 18 Apr 2022
Answered: Richard Quist
on 30 Apr 2022
I have been trying two put two graphs in a single make and make it PDF. But the border of the pages is not equal on all the sides and the grpahs are tend to shift. the positions of the graphs are dictated by the 'PaperPosition' command which is applied after the 2nd graph. I need both the grpah on the same page with equal border margin and grpah lengths (height and width). I have added the code for clarification. Is there any way that I can use to solve the problem. The code is given below:
p=1
x=rand(90,1)
subplot(2,1,1)
plot(x)
grid on;
grid minor;
str = sprintf('Random data for experiment');
xlabel({'X-axis',str});
ylabel('Y-axis');
t=0:0.01:4*pi
f=1
y=5*sin(2*pi*f*t)
subplot(2,1,2)
plot(t,y)
grid on;
grid minor
str = sprintf('Sinewave for experiment');
xlabel({'Time(s)',str});
ylabel('Voltage(v)');
x_width1=8.7;
y_width1=11;
set(gcf, 'PaperPosition', [-0.1 0.4 x_width1 y_width1]);
7 Comments
Adam Danz
on 20 Apr 2022
If you're using R2020a or later you could use exportgraphics but the figure borders will be trimmed.
Accepted Answer
Richard Quist
on 30 Apr 2022
If you're using R2020a or later, you might want to try the exportgraphics command, which produces tightly cropped output (eliminating excess white space) in most cases. For PDF and other vector output formats (like EPS), you can ensure this by specifying the ContentType parameter:
% In R2020a and later, use the exportgraphics command and specify the 'ContentType' as 'vector':
exportgraphics(fig, 'output.pdf', 'ContentType', 'vector');
0 Comments
More Answers (0)
See Also
Categories
Find more on Printing and Saving 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!