이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

여러 개의 플롯 결합하기

플롯을 결합하는 방법은 다양합니다. 동일한 좌표축에서 플롯을 결합하거나 서브플롯을 사용하여 Figure에 여러 개의 좌표축을 생성합니다.

동일한 좌표축에서 플롯 결합하기

기본적으로 새 플롯은 기존 플롯을 지우고 제목 같은 axes 속성을 재설정합니다. 그러나 hold on 명령을 사용하여 동일한 좌표축에서 여러 개의 플롯을 결합할 수 있습니다. 예를 들어, 두 개의 선과 산점도 플롯을 플로팅합니다. 그런 다음 유지 상태를 꺼짐으로 재설정합니다.

x = linspace(0,10,50);
y1 = sin(x);
plot(x,y1)
title('Combine Plots')

hold on

y2 = sin(x/2);
plot(x,y2)

y3 = 2*sin(x);
scatter(x,y3) 

hold off

유지 상태가 켜짐이 되면 새 플롯은 기존 플롯을 지우거나 제목 또는 축 레이블 같은 axes 속성을 재설정하지 않습니다. 이 플롯은 좌표축의 ColorOrder 속성과 LineStyleOrder 속성을 기반으로 색과 선 스타일을 순환적으로 적용합니다. 좌표축 제한과 눈금 값은 새로운 데이터를 수용하기 위해 조정될 수 있습니다.

서브플롯을 사용하여 Figure에 여러 개의 좌표축 생성하기

Figure를 서브플롯 그리드로 나누는 subplot 함수를 사용하여 단일 Figure에 여러 개의 좌표축을 생성합니다. subplot의 처음 두 개 입력값은 각 행과 열의 서브플롯 개수를 나타냅니다. 세 번째 입력값은 활성 상태인 서브플롯을 지정합니다. MATLAB은 행을 기준으로 서브플롯 위치의 번호를 매깁니다. plottitle 같은 그래픽스 함수는 활성화된 서브플롯을 대상으로 합니다.

예를 들어, Figure 창에 두 개의 누적 서브플롯을 2x1 그리드로 만들어 보겠습니다. 각 서브플롯에 제목을 추가합니다.

subplot(2,1,1);
x = linspace(0,10,50);
y1 = sin(x);
plot(x,y1)
title('Subplot 1')

subplot(2,1,2);
y2 = rand(50,1);
scatter(x,y2)
title('Subplot 2')

여러 그리드 위치에 걸쳐 있는 서브플롯 생성하기

여러 그리드 위치에 걸쳐 있는 서브플롯을 생성하려면 subplot 함수에 대한 세 번째 입력 인수를 위치로 구성된 배열로 지정하십시오. 예를 들어, 서브플롯으로 구성된 2x2 그리드를 만들어 보겠습니다. Figure 윗부분에 위치한 서브플롯 두 개, 아랫부분 전체에 걸쳐 있는 서브플롯 한 개를 생성합니다.

figure
subplot(2,2,1);
x = linspace(0,10,50);
y1 = sin(x);
plot(x,y1)

subplot(2,2,2);
y2 = rand(50,1);
scatter(x,y2)

subplot(2,2,[3 4]);
y3 = rand(50,1);
plot(x,y2)

서브플롯 모양 수정하기

기본 Axes 객체의 속성을 설정하여 서브플롯 모양을 수정합니다. subplot 함수의 출력 인수를 사용하여 Axes 객체에 액세스합니다. 또한 Axes 객체를 그래픽스 함수에 대한 첫 번째 입력 인수로 사용하여 함수가 올바른 서브플롯을 대상으로 하도록 할 수 있습니다.

예를 들어, 두 개의 서브플롯을 생성하고 Axes 객체를 변수 ax1ax2에 할당합니다. 첫 번째 서브플롯의 좌표축 글꼴 크기와 x축 색을 변경합니다. 두 번째 서브플롯에 그리드 선을 추가합니다.

figure
ax1 = subplot(2,1,1);
x = linspace(0,10,50);
y1 = sin(x);
plot(ax1,x,y1)
title(ax1,'Subplot 1')
ax1.FontSize = 14;
ax1.XColor = 'red';

ax2 = subplot(2,1,2);
y2 = rand(50,1);
scatter(ax2,x,y2)
title(ax2,'Subplot 2')
grid(ax2,'on')

서브플롯으로 구성된 그리드에 상위 제목 추가하기

서브플롯이 있는 Figure를 생성할 때, 모든 서브플롯에 적용되는 제목을 추가하고자 할 수 있습니다. R2018b부터 sgtitle 함수를 사용하여 서브플롯으로 구성된 그리드에 제목을 추가할 수 있습니다.

subplot(2,1,1);
x = linspace(0,10,50);
y1 = sin(x);
plot(x,y1)
title('Subplot 1')

subplot(2,1,2);
y2 = rand(50,1);
scatter(x,y2)
title('Subplot 2')

sgtitle('My Subplot Grid Title')

참고 항목

함수

관련 항목