print figure with prescript axes position

조회 수: 1 (최근 30일)
Sri Adiyanti
Sri Adiyanti . 2021년 7월 17일
편집: Richard Quist . 2021년 11월 28일
Hi there,
I printed a figure with a black background and axes handle, but can't seem to reduce the margin when saving it using "print" comment.
Please see below example of the code - dimensions is correct, but when i defined axes position as [0 0 1 1] it still leaves some margins on the background (see attached figure).
Any suggestion?
def.dimensions = [6 6]; % Width & Height in cm
set(gcf, 'PaperPositionMode', 'manual');
set(gcf, 'PaperUnits', 'centimeters','PaperOrientation','Portrait');
xSize = def.dimensions(1); ySize = def.dimensions(2); set(gcf,'paperposition',[0 0 xSize ySize])
ax = axes('Position',[0 0 1 1],'Box','off');
colID = randsample(nCols,1);
plot(x,y,'LineStyle','-','LineWidth', 0.1,'Color', BrightCol.Code(colID));
axis equal;
ax.XAxis.Color = 'none'; ax.YAxis.Color = 'none'; set(ax,'XColor', 'none','YColor','none'); set(ax,'Visible','off');
set(gcf,'color',[0.1 0.1 0.1])
set(gcf, 'InvertHardCopy', 'off');
outdir = [ outputDir,char(nameGroups(i)),'\'];
filename = [outdir,[fileID,'.jpeg']];
print(gcf, filename, '-djpeg', '-r1200');
  댓글 수: 1
Scott MacKenzie
Scott MacKenzie 2021년 7월 17일
It would help if you provided code that can be executed. As is, your code crashes because it accesses unitialized variables.

댓글을 달려면 로그인하십시오.

채택된 답변

Richard Quist
Richard Quist 2021년 11월 28일
편집: Richard Quist 님. 2021년 11월 28일
If you are using R2020a or later you can use the exportgraphics command:
% in R2020a or later - create file in current directory:
exportgraphics(gcf, 'output.jpg', 'Resolution', 1200);
exportgraphics will eliminate most of the "margins" typically included when using the print command

추가 답변 (0개)


Help CenterFile Exchange에서 Environment and Settings에 대해 자세히 알아보기





Community Treasure Hunt

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

Start Hunting!

Translated by