그래프 그림 크기 설정


91

내가 원하는 것은 너비를 더 크게 만들고 높이를 더 작게 만드는 것입니다. 나는 래스터 플롯을하고 있지만이 질문은 모든 MATLAB에 적용됩니다 figure. 그림을 만들 때 직접 그림을 사용하여 수동으로 크기를 조정할 수 있지만 프로그램에서 시작하기에 적합한 크기로 뱉어 내고 싶습니다.

답변:


81

에 대해 설정할 수있는 속성 figure여기에서 참조 됩니다 .

그런 다음 다음을 사용할 수 있습니다.

figure_number = 1;
x      = 0;   % Screen position
y      = 0;   % Screen position
width  = 600; % Width of figure
height = 400; % Height of figure (by default in pixels)

figure(figure_number, 'Position', [x y width height]);

12
그리고에 정의 된 동일한 치수로 그림을 어떻게 저장할 수 set있습니까? 으로 saveas(gcf, file, 'png')사용하는 대신 치수 기본.
István Zachar 2012 년


64

A와 그것을 쓰기 한 줄 :

figure('position', [0, 0, 200, 500])  % create new figure with specified size  

여기에 이미지 설명 입력


31
 figure (1)
 hFig = figure(1);
 set(gcf,'PaperPositionMode','auto')
 set(hFig, 'Position', [0 0 xwidth ywidth])
 plot(x,y)
 print -depsc2 correlation.eps;       % for saving in eps, look up options for saving as png or other formats you may need

이렇게하면 그림이 지정된 치수로 저장됩니다.


8
'PaperPositionMode'의 경우 그림을 '인쇄'(내보내기)해야합니다.
Ali

1

다음 순서로 좋은 결과를 얻었습니다 (처음에는 Matlab을 두 번 실행).

h = gcf; % Current figure handle
set(h,'Resize','off');
set(h,'PaperPositionMode','manual');
set(h,'PaperPosition',[0 0 9 6]);
set(h,'PaperUnits','centimeters');
set(h,'PaperSize',[9 6]); % IEEE columnwidth = 9cm
set(h,'Position',[0 0 9 6]);
% xpos, ypos must be set
txlabel = text(xpos,ypos,'$$[\mathrm{min}]$$','Interpreter','latex','FontSize',9);

% Dump colored encapsulated PostScript
print('-depsc2','-loose', 'signals');

0

다른 접근 방식.
figure()전화 속성을 지정 이후에 그림 핸들의 속성을 수정h = figure() .

이렇게하면 정규화 된 단위를 기반으로 전체 화면 그림이 생성됩니다.
figure('units','normalized','outerposition',[0 0 1 1])

units속성 인치 cm, 픽셀 등으로 조정할 수있다

figure 설명서를 참조하십시오 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.