2016-10-03 3 views
-1

여러 개의 서브 플로트로 구성된 요약 그림을 만들려고합니다. 문제는 화면의 크기를 초과하여 그림의 전체 크기를 늘릴 수 없다는 것입니다. 나는 12 × 8 서브 플로트를 만들려고하고 있으며 동시에 실험에서 모든 수치를 볼 수 있습니다. 그러나 서브 플롯을 생성 할 때 이것이 결과입니다. 여기 MATLAB에서 서브 플로트 그림의 크기를 늘리는 방법

Example subplot figure

그리고

내가 말한 그림을 생성하는 데 사용되는 코드입니다.

c = {'r' 'c' 'g' 'm' 'y' 'k'}; 
    for x = 1:96 
     table = load(file_array(x).name); 
     table = struct2array(table); 
     [~,col] = size(table); 
     subplot_tight(12,8,x); 
     for t = 1:col 
      plot(table(:,t), c{t}); 
      hold on 
     end 
     H = sprintf('%s\n', file_array(x).name); 
     title(H); 

    end 
    figname = sprintf('%s_Duration_part1',heading.name(1:end-4)); 

    saveas(gcf, figname, 'fig'); 

    close all %reset figure 

그것은 모든 하위 수치가 볼 수 있도록 좋은 데요하지만 실제로 줄거리에서 데이터를 읽을 수는 본질적으로 불가능하다. 이상적인 점은 전체 그림이 더 커지므로 더 큰 그림을 스크롤하고 하위 그림을 볼 수 있도록 저장하는 것입니다. 또는 그림 스택을 슬라이드 쇼로 저장하는 방법이있는 경우 궁극적으로 특정 실험에 대한 모든 데이터가 하나의 개별 그림으로 구성됩니다.

답변

1

전체 그림을 저장하려면 그림 자체를 보지 말고 print 함수를 사용하여 렌더러를 구성하십시오. 더 많은 정보가 표시해야하므로이 높은 설정 DPI 설정

print('-r1200','Plot','-dpng',) 

:

같은 것을보십시오. 다른 속성을 변경하여 가로 세로 비율 인 renderer size 등을 재생할 수 있습니다.

불행히도 옥타브에만 액세스 할 수 있기 때문에 실제 예제를 제공 할 수는 없습니다.

+0

인쇄를 사용하여 최종 해상도를 더욱 제어 할 수있었습니다. 이 코드는 꽤 잘 돌아갔다. ('-dtiff', figname, '-r100')'set (gcf, 'PaperUnits', 'inches', 'PaperPosition', [0 0 80 45]) 인쇄 –

관련 문제