Main Content

차트에 텍스트 추가하기

이 예제에서는 차트에 텍스트를 추가하고, 텍스트 위치와 텍스트 크기를 제어하고, 여러 줄로 된 텍스트를 생성하는 방법을 보여줍니다.

텍스트 위치

text 함수를 사용하여 특정 데이터 점 옆에 텍스트를 추가합니다. 이 경우, 점 (π,sin(π))에 텍스트를 추가합니다. text 함수에 대한 처음 두 개의 입력 인수가 위치를 지정합니다. 세 번째 인수는 텍스트를 지정합니다.

기본적으로 text는 TeX 마크업의 서브셋을 지원합니다. 그리스 문자 π에는 TeX 마크업 \pi를 사용합니다. TeX 마크업 \leftarrow를 포함시켜 왼쪽을 가리키는 화살표를 표시합니다. 전체 마크업 목록은 차트 텍스트에 들어 있는 그리스 문자나 특수 문자 항목을 참조하십시오.

x = linspace(0,10,50);
y = sin(x);
plot(x,y)

txt = '\leftarrow sin(\pi) = 0';
text(pi,sin(pi),txt)

Figure contains an axes object. The axes object contains 2 objects of type line, text.

텍스트 맞춤

기본적으로, 지정된 데이터 점은 텍스트의 왼쪽에 배치됩니다. HorizontalAlignment 속성을 'right'로 지정하여 데이터 점을 텍스트의 오른쪽에 정렬합니다. 왼쪽 대신 오른쪽을 가리키는 화살표를 사용합니다.

x = linspace(0,10,50);
y = sin(x);
plot(x,y)

txt = 'sin(\pi) = 0 \rightarrow';
text(pi,sin(pi),txt,'HorizontalAlignment','right')

Figure contains an axes object. The axes object contains 2 objects of type line, text.

글꼴 크기

FontSize 속성을 text 함수에 대한 이름-값 쌍의 인수로 설정하여 텍스트의 글꼴 크기를 지정합니다. title 함수, xlabel, ylabel 함수 또는 legend 함수를 사용할 때 비슷한 방법으로 글꼴 크기를 변경할 수 있습니다.

x = linspace(0,10,50);
y = sin(x);
plot(x,y)

txt = '\leftarrow sin(\pi) = 0';
text(pi,sin(pi),txt,'FontSize',14)

Figure contains an axes object. The axes object contains 2 objects of type line, text.

또는, R2022a부터는 fontsize 함수를 사용하여 좌표축 텍스트의 글꼴 크기를 변경할 수 있습니다.

텍스트 속성 설정하기

text 함수는 Text 객체를 생성합니다. Text 객체는 텍스트의 모양을 사용자 지정하는 데 사용할 수 있는 속성(예: HorizontalAlignment 또는 FontSize)을 갖습니다.

다음 두 가지 방법으로 속성을 설정할 수 있습니다.

  • text 명령에 이름-값 쌍을 사용합니다(예: 'FontSize',14).

  • Text 객체를 사용합니다. Text 객체를 text 함수의 출력 인수로 반환하고 변수에 할당할 수 있습니다(예: t). 그런 다음, 점 표기법을 사용하여 속성을 설정합니다(예: t.FontSize = 14).

이 예제의 경우, 이름-값 쌍 대신 점 표기법을 사용하여 글꼴 크기를 변경합니다.

x = linspace(0,10,50);
y = sin(x);
plot(x,y)

txt = '\leftarrow sin(\pi) = 0';
t = text(pi,sin(pi),txt)
t = 
  Text (\leftarrow sin(\pi) = 0) with properties:

                 String: '\leftarrow sin(\pi) = 0'
               FontSize: 10
             FontWeight: 'normal'
               FontName: 'Helvetica'
                  Color: [0 0 0]
    HorizontalAlignment: 'left'
               Position: [3.1416 1.2246e-16 0]
                  Units: 'data'

  Use GET to show all properties

t.FontSize = 14;

Figure contains an axes object. The axes object contains 2 objects of type line, text.

여러 줄로 된 텍스트

문자형 벡터로 구성된 셀형 배열을 사용하여 텍스트를 여러 줄로 표시합니다. 셀형 배열의 각 요소는 텍스트의 한 줄에 해당합니다. 예를 들어, 제목을 두 줄로 표시해 보겠습니다. 비슷한 방법으로 title 함수, xlabel 함수, ylabel 함수 또는 legend 함수를 사용하여 여러 줄로 된 텍스트를 표시할 수 있습니다.

x = linspace(0,10,50);
y = sin(x);
plot(x,y)

txt = {'Plotted Data:','y = sin(x)'};
text(4,0.5,txt)

Figure contains an axes object. The axes object contains 2 objects of type line, text.

변수 값이 포함된 텍스트

num2str 함수를 사용하여 숫자를 텍스트로 변환하는 방법으로 텍스트에 변수 값을 포함시킵니다. 이 예제의 경우, 평균 y 값을 계산한 후 이 값을 제목에 포함시킵니다. 비슷한 방법으로 title 함수, xlabel 함수, ylabel 함수 또는 legend 함수를 사용하여 변수 값을 포함시킬 수 있습니다.

x = linspace(0,10,50);
y = sin(x);
plot(x,y)

avg = mean(y);
txt = ['Average height: ' num2str(avg) ' units'];
text(4,0.5,txt)

Figure contains an axes object. The axes object contains 2 objects of type line, text.

좌표축 바깥쪽의 텍스트

text 함수 대신 annotation 함수를 사용하여 Figure 내의 원하는 위치에 텍스트를 추가합니다. 첫 번째 입력 인수는 주석의 유형을 지정합니다. 두 번째 입력 인수는 Figure에 대해 정규화된 단위로 주석의 위치를 지정합니다. EdgeColor 속성을 'none'으로 설정하여 텍스트 상자 테두리를 지웁니다. 텍스트 상자 주석에 대한 자세한 내용은 annotation 함수를 참조하십시오.

x = linspace(0,10,50);
y = sin(x);
plot(x,y)

annotation('textbox',[.9 .5 .1 .2], ...
    'String','Text outside the axes','EdgeColor','none')

Figure contains an axes object. The axes object contains an object of type line.

참고 항목

| | | | |

관련 항목