Main Content

legend

좌표축에 범례 추가

설명

예제

legend는 플로팅된 각 데이터 계열에 대한 설명 레이블을 포함한 범례를 만듭니다. 레이블의 경우 범례는 데이터 계열의 DisplayName 속성에 있는 텍스트를 사용합니다. DisplayName 속성이 비어 있는 경우 범례는 'dataN' 형식의 레이블을 사용합니다. 범례는 좌표축에 데이터 계열을 추가하거나 삭제할 때 자동으로 업데이트됩니다. 이 명령은 gca 명령이 반환하는 현재 좌표축에 대한 범례를 만듭니다. 현재 좌표축이 비어 있으면 범례도 비어 있습니다. 좌표축이 없는 경우 legend는 카테시안 좌표축을 만듭니다.

예제

legend(label1,...,labelN)은 범례 레이블을 설정합니다. 레이블을 문자형 벡터 또는 string형으로 구성된 목록으로 지정합니다(예: legend('Jan','Feb','Mar')).

legend(labels)는 문자형 벡터로 구성된 셀형 배열, string형 배열 또는 문자형 행렬을 사용하여 레이블을 설정합니다(예: legend({'Jan','Feb','Mar'})).

예제

legend(subset,___)subset에 나열된 데이터 계열의 범례에 있는 항목만 포함합니다. subset을 그래픽스 객체로 구성된 벡터로 지정하십시오. subset은 레이블 지정 전에 지정할 수도 있고, 혹은 다른 입력 인수 없이도 지정할 수 있습니다.

예제

legend(target,___)은 현재 좌표축 대신 target으로 지정된 좌표축 또는 독립형 시각화를 사용합니다. target을 첫 번째 입력 인수로 지정하십시오.

예제

legend(___,'Location',lcn)은 범례 위치를 설정합니다. 예를 들어, 'Location','northeast'는 좌표축의 오른쪽 상단에 범례를 배치합니다. 다른 입력 인수 다음에 위치를 지정하십시오.

예제

legend(___,'Orientation',ornt)에서 ornt'horizontal'인 경우, 범례 항목을 나란히 표시합니다. ornt의 디폴트 값은 'vertical'이며, 이 경우 범례 항목이 세로로 표시됩니다.

예제

legend(___,Name,Value)는 하나 이상의 이름-값 쌍의 인수를 사용하여 legend 속성을 설정합니다.

예제

legend(bkgd)에서 bkgd'boxoff'인 경우, 범례의 배경과 윤곽선을 제거합니다. bkgd의 디폴트 값은 'boxon'이며, 이 경우 범례의 배경과 윤곽선을 표시합니다.

lgd = legend(___)Legend 객체를 반환합니다. lgd를 사용하면 범례가 생성된 후에 범례의 속성을 쿼리하고 설정할 수 있습니다. 속성 목록은 Legend 속성를 참조하십시오.

legend(vsbl)은 범례의 가시성을 제어하며, 여기서 vsbl'hide', 'show' 또는 'toggle'입니다.

legend('off')는 범례를 삭제합니다.

예제

모두 축소

두 개의 선을 플로팅하고 현재 좌표축에 범례를 추가합니다. 범례 레이블을 legend 함수에 대한 입력 인수로 지정하십시오.

x = linspace(0,pi);
y1 = cos(x);
plot(x,y1)

hold on 
y2 = cos(2*x);
plot(x,y2)

legend('cos(x)','cos(2x)')

Figure contains an axes object. The axes object contains 2 objects of type line. These objects represent cos(x), cos(2x).

좌표축에서 데이터 계열을 추가하거나 삭제하면 범례도 같이 업데이트됩니다. 생성 시 DisplayName 속성을 이름-값 쌍으로 설정하여 새 데이터 계열에 대한 레이블을 제어합니다. 레이블을 지정하지 않으면 범례에는 'dataN' 형식의 레이블이 사용됩니다.

참고: 좌표축에 데이터 계열이 추가되거나 제거될 때 범례가 자동으로 업데이트되지 않도록 하려면 범례의 AutoUpdate 속성을 'off'로 설정하십시오.

y3 = cos(3*x);
plot(x,y3,'DisplayName','cos(3x)')
hold off

Figure contains an axes object. The axes object contains 3 objects of type line. These objects represent cos(x), cos(2x), cos(3x).

범례를 삭제합니다.

legend('off')

Figure contains an axes object. The axes object contains 3 objects of type line. These objects represent cos(x), cos(2x), cos(3x).

R2019b부터는 tiledlayout 함수와 nexttile 함수를 사용하여 플롯을 타일 형식 배열로 표시할 수 있습니다. tiledlayout 함수를 호출하여 2×1 타일 형식 차트 레이아웃을 만듭니다. nexttile 함수를 호출하여 axes 객체 ax1ax2를 만듭니다. 각 좌표축에서 난수 데이터를 플로팅합니다. ax1legend의 첫 번째 입력 인수로 지정하여 상부 플롯에 범례를 추가합니다.

tiledlayout(2,1)
y1 = rand(3);
ax1 = nexttile; 
plot(y1)

y2 = rand(5);
ax2 = nexttile; 
plot(y2)

legend(ax1,{'Line 1','Line 2','Line 3'})

Figure contains 2 axes objects. Axes object 1 contains 3 objects of type line. These objects represent Line 1, Line 2, Line 3. Axes object 2 contains 5 objects of type line.

두 개의 선을 플로팅합니다. DisplayName 속성을 원하는 텍스트로 설정하여 플로팅 명령 중에 범례 레이블을 지정합니다. 그런 다음, 범례를 추가합니다.

x = linspace(0,pi);
y1 = cos(x);
plot(x,y1,'DisplayName','cos(x)')

hold on 
y2 = cos(2*x);
plot(x,y2,'DisplayName','cos(2x)')
hold off

legend

Figure contains an axes object. The axes object contains 2 objects of type line. These objects represent cos(x), cos(2x).

범례에서 선을 제외하려면 해당 레이블을 빈 문자형 벡터 또는 string형으로 지정하십시오. 예를 들어, 두 개의 사인파를 플로팅하고 yline 함수를 호출하여 파선 영점 선을 추가합니다. 그런 다음 범례를 만들고, 레이블을 ''로 지정하여 영점 선을 제외합니다.

x = 0:0.2:10;
plot(x,sin(x),x,sin(x+1));
hold on
yline(0,'--')
legend('sin(x)','sin(x+1)','')

Figure contains an axes object. The axes object contains 3 objects of type line, constantline. These objects represent sin(x), sin(x+1).

네 개의 선을 플로팅합니다. 좌표축의 북서 영역에 범례를 만듭니다. NumColumns 속성을 사용하여 범례 열의 개수를 지정합니다.

x = linspace(0,pi);
y1 = cos(x);
plot(x,y1)

hold on
y2 = cos(2*x);
plot(x,y2)

y3 = cos(3*x);
plot(x,y3)

y4 = cos(4*x);
plot(x,y4)
hold off

legend({'cos(x)','cos(2x)','cos(3x)','cos(4x)'},...
    'Location','northwest','NumColumns',2)

Figure contains an axes object. The axes object contains 4 objects of type line. These objects represent cos(x), cos(2x), cos(3x), cos(4x).

기본적으로 범례는 각 열을 따라 위쪽에서 아래쪽으로 항목을 정렬합니다. 이렇게 하는 대신 항목을 각 행을 따라 왼쪽에서 오른쪽으로 정렬하려면 Orientation 속성을 'horizontal'로 설정하십시오.

R2023b 이후

범례의 Direction 속성을 설정하여 범례 항목의 순서를 반대로 바꿀 수 있습니다. 예를 들어, 4개의 선을 플로팅하고 범례를 추가합니다.

plot([4 5 6 7; 0 1 2 3])
lgd = legend("First","Second","Third","Fourth");

Figure contains an axes object. The axes object contains 4 objects of type line. These objects represent First, Second, Third, Fourth.

범례 항목의 순서를 반대로 바꿉니다.

lgd.Direction = "reverse";

Figure contains an axes object. The axes object contains 4 objects of type line. These objects represent First, Second, Third, Fourth.

둘 이상의 플롯에서 범례를 공유하려면 레이아웃의 별도의 타일에 범례를 표시하면 됩니다. 범례는 타일 그리드 내에 배치하거나 바깥쪽 타일에 배치할 수 있습니다.

타일 형식 차트 레이아웃에 세 개의 플롯을 만듭니다.

t = tiledlayout('flow','TileSpacing','compact');
nexttile
plot(rand(5))
nexttile
plot(rand(5))
nexttile
plot(rand(5))

Figure contains 3 axes objects. Axes object 1 contains 5 objects of type line. Axes object 2 contains 5 objects of type line. Axes object 3 contains 5 objects of type line.

공유 범례를 추가하고 네 번째 타일로 이동합니다.

lgd = legend;
lgd.Layout.Tile = 4;

Figure contains 3 axes objects. Axes object 1 contains 5 objects of type line. Axes object 2 contains 5 objects of type line. Axes object 3 contains 5 objects of type line.

다음으로, 네 번째 플롯을 추가하고 범례를 동쪽 타일로 이동합니다.

nexttile
plot(rand(5))
lgd.Layout.Tile = 'east';

Figure contains 4 axes objects. Axes object 1 contains 5 objects of type line. Axes object 2 contains 5 objects of type line. Axes object 3 contains 5 objects of type line. Axes object 4 contains 5 objects of type line.

플로팅된 그래픽스 객체의 일부만 범례에 포함시키고자 한다면 그러한 그래픽스 객체를 지정해야 합니다.

세 개의 선을 플로팅하고 생성된 Line 객체를 반환합니다. 선 중에서 두 개만 포함하는 범례를 만듭니다. 첫 번째 입력 인수를 포함할 Line 객체의 벡터로 지정해 보십시오.

x = linspace(0,pi);
y1 = cos(x);
p1 = plot(x,y1);

hold on
y2 = cos(2*x);
p2 = plot(x,y2);

y3 = cos(3*x);
p3 = plot(x,y3);
hold off

legend([p1 p3],{'First','Third'})

Figure contains an axes object. The axes object contains 3 objects of type line. These objects represent First, Third.

플롯을 만든 다음 legend 함수를 호출하고 Interpreter 속성을 'latex'으로 설정하여 LaTeX 마크업을 갖는 범례를 추가합니다. 마크업을 달러 기호($)로 묶습니다.

x = 0:0.1:10;
y = sin(x);
dy = cos(x);
plot(x,y,x,dy);
legend('$sin(x)$','$\frac{d}{dx}sin(x)$','Interpreter','latex');

Figure contains an axes object. The axes object contains 2 objects of type line. These objects represent $sin(x)$, $\frac{d}{dx}sin(x)$.

두 개의 선을 플로팅하고 범례를 생성합니다. 그런 다음 범례에 제목을 추가합니다.

x = linspace(0,pi);
y1 = cos(x);
plot(x,y1)

hold on
y2 = cos(2*x);
plot(x,y2)
hold off

lgd = legend('cos(x)','cos(2x)');
title(lgd,'My Legend Title')

Figure contains an axes object. The axes object contains 2 objects of type line. These objects represent cos(x), cos(2x).

두 개의 선을 플로팅하고 좌표축의 왼쪽 아래 코너에 범례를 만듭니다. 그런 다음, 범례의 배경과 윤곽선을 제거합니다.

x = linspace(0,pi);
y1 = cos(x);
plot(x,y1)

hold on
y2 = cos(2*x);
plot(x,y2)
hold off

legend({'cos(x)','cos(2x)'},'Location','southwest')
legend('boxoff')

Figure contains an axes object. The axes object contains 2 objects of type line. These objects represent cos(x), cos(2x).

속성을 설정하여 범례의 다른 특성을 변경할 수 있습니다. legend를 호출할 때 이름-값 인수를 지정하여 속성을 설정하거나 legend를 호출한 후 Legend 객체의 속성을 설정할 수 있습니다.

난수 데이터의 네 개의 선을 플로팅합니다. 범례를 만들고 변수 lgdLegend 객체를 할당합니다. 이름-값 인수를 사용하여 FontSize 속성과 TextColor 속성을 설정합니다.

rdm = rand(4);
plot(rdm)

lgd = legend({'Line 1','Line 2','Line 3','Line 4'},...
    'FontSize',12,'TextColor','blue');

Figure contains an axes object. The axes object contains 4 objects of type line. These objects represent Line 1, Line 2, Line 3, Line 4.

범례를 만든 후 lgd를 참조하여 범례를 수정합니다. 객체.속성 이름 표기법을 사용하여 NumColumns 속성을 설정합니다.

lgd.NumColumns = 2;

Figure contains an axes object. The axes object contains 4 objects of type line. These objects represent Line 1, Line 2, Line 3, Line 4.

입력 인수

모두 축소

레이블로, 쉼표로 구분된 문자형 벡터 또는 string형의 목록으로 지정됩니다.

범례에서 항목을 제외하려면 해당 레이블을 빈 문자형 벡터 또는 string형으로 지정하십시오.

레이블에 특수 문자나 그리스 문자를 포함시키려면 TeX 또는 LaTeX 마크업을 사용하십시오. 옵션 테이블을 보려면 Interpreter 속성을 참조하십시오.

'Location'이나 'off'와 같은 키워드를 레이블로 지정하려면 문자형 벡터로 구성된 셀형 배열, string형 배열 또는 문자형 배열을 사용하십시오.

예: legend('Sin Function','Cos Function')

예: legend("Sin Function","Cos Function")

예: legend("Sample A","","Sample C")

예: legend('\gamma','\sigma')

레이블로, 문자형 벡터로 구성된 셀형 배열, string형 배열 또는 categorical형 배열로 지정됩니다.

범례에서 항목을 제외하려면 해당 레이블을 셀형 배열의 빈 문자형 벡터 또는 string형 배열의 빈 string형으로 지정하십시오.

레이블에 특수 문자나 그리스 문자를 포함시키려면 TeX 또는 LaTeX 마크업을 사용하십시오. 옵션 테이블을 보려면 Interpreter 속성을 참조하십시오.

예: legend({'Sin Function','Cos Function'})

예: legend(["Sin Function","Cos Function"])

예: legend({'Sample A','','Sample C'})

예: legend({'\gamma','\sigma'})

예: legend(categorical({'Alabama','New York'}))

범례에 포함시킬 데이터 계열로, 그래픽스 객체로 구성된 벡터로 지정됩니다.

범례의 대상으로, Axes 객체, PolarAxes 객체, GeographicAxes 객체 또는 LegendVisible 속성을 가진 독립형 시각화(예: GeographicBubbleChart 객체)로 지정됩니다. 대상을 지정하지 않은 경우 legend 함수는 gca 명령으로 반환된 객체를 타깃으로 사용합니다.

독립형 시각화는 위치를 비롯한 범례 모양을 수정하거나 Legend 객체를 출력 인수로 반환할 수 없습니다.

좌표축을 기준으로 한 범례 위치로, 다음 표에 나열된 위치 값 중 하나로 지정됩니다.

설명
'north'좌표축의 내부 맨 위
'south'좌표축의 내부 맨 아래
'east'좌표축의 내부 오른쪽
'west'좌표축의 내부 왼쪽
'northeast'좌표축의 내부 오른쪽 위(2차원 축의 경우 디폴트 값)
'northwest'좌표축의 내부 왼쪽 위
'southeast'좌표축의 내부 오른쪽 아래
'southwest'좌표축의 내부 왼쪽 아래
'northoutside'좌표축의 외부 위
'southoutside'좌표축의 외부 아래
'eastoutside'좌표축의 오른쪽
'westoutside'좌표축의 왼쪽
'northeastoutside'좌표축의 외부 오른쪽 위 코너(3차원 축의 경우 디폴트 값)
'northwestoutside'좌표축의 외부 왼쪽 위 코너
'southeastoutside'좌표축의 외부 오른쪽 아래 코너
'southwestoutside'좌표축의 외부 왼쪽 아래 코너
'best'범례를 만드는 시점에 플롯 데이터와의 충돌이 가장 적은 좌표축 내부. 플롯 데이터가 변경되는 경우 위치를 'best'로 재설정해야 할 수 있습니다.
'bestoutside'좌표축의 외부 오른쪽 위 코너(범례의 방향이 세로인 곳) 또는 좌표축 아래(범례의 방향이 가로인 곳)
'layout'타일 형식 차트 레이아웃의 타일. 범례를 다른 타일로 이동하려면 범례의 Layout 속성을 설정하십시오.
'none'Position 속성에 의해 결정됩니다. 사용자 지정 위치에 범례를 표시하려면 Position 속성을 사용하십시오.

예: legend('Location','northeastoutside')

방향으로, 다음 값 중 하나로 지정됩니다.

  • 'vertical' — 범례 항목을 세로로 쌓습니다.

  • 'horizontal' — 범례 항목을 나란히 나열합니다.

예: legend('Orientation','horizontal')

범례 상자 표시 여부로, 다음 값 중 하나로 지정됩니다.

  • 'boxon' — 범례의 배경과 윤곽선을 표시합니다.

  • 'boxoff' — 범례의 배경과 윤곽선을 표시하지 않습니다.

예: legend('boxoff')

범례 가시성으로, 다음 값 중 하나로 지정됩니다.

  • 'hide' — 범례를 숨깁니다.

  • 'show' — 범례를 표시하거나 범례가 없는 경우 범례를 만듭니다.

  • 'toggle' — 범례의 가시성을 전환합니다.

예: legend('hide')

이름-값 인수

선택적 인수 쌍을 Name1=Value1,...,NameN=ValueN으로 지정합니다. 여기서 Name은 인수 이름이고 Value는 대응값입니다. 이름-값 인수는 다른 인수 뒤에 와야 하지만, 인수 쌍의 순서는 상관없습니다.

R2021a 이전 릴리스에서는 쉼표를 사용하여 각 이름과 값을 구분하고 Name을 따옴표로 묶으십시오.

예: legend({'A','B'},'TextColor','blue','FontSize',12)는 12포인트 크기의 파란색 글꼴로 범례를 만듭니다.

참고

여기에 나와 있는 속성은 일부에 불과합니다. 전체 목록을 보려면 Legend 속성를 참조하십시오.

텍스트 색으로, RGB 3색, 16진수 색 코드, 색 이름 또는 짧은 이름으로 지정됩니다. 디폴트 색은 값이 [0 0 0]인 검은색입니다.

사용자 지정 색의 경우에는 RGB 3색 또는 16진수 색 코드를 지정하십시오.

  • RGB 3색은 요소를 3개 가진 행 벡터로, 각 요소는 색을 구성하는 빨간색, 녹색, 파란색의 농도를 지정합니다. 농도의 범위는 [0,1]이어야 합니다(예: [0.4 0.6 0.7]).

  • 16진수 색 코드는 string형 스칼라 또는 문자형 벡터로, 해시 기호(#)로 시작하고 그 뒤에 3자리 또는 6자리의 16진수 숫자(0에서 F 사이일 수 있음)가 옵니다. 이 값은 대/소문자를 구분하지 않습니다. 따라서 색 코드 "#FF8800", "#ff8800", "#F80""#f80"은 모두 동일합니다.

몇몇의 흔한 색은 이름으로 지정할 수도 있습니다. 다음 표에는 명명된 색 옵션과 그에 해당하는 RGB 3색 및 16진수 색 코드가 나와 있습니다.

색 이름짧은 이름RGB 3색16진수 색 코드모양
"red""r"[1 0 0]"#FF0000"

Sample of the color red

"green""g"[0 1 0]"#00FF00"

Sample of the color green

"blue""b"[0 0 1]"#0000FF"

Sample of the color blue

"cyan" "c"[0 1 1]"#00FFFF"

Sample of the color cyan

"magenta""m"[1 0 1]"#FF00FF"

Sample of the color magenta

"yellow""y"[1 1 0]"#FFFF00"

Sample of the color yellow

"black""k"[0 0 0]"#000000"

Sample of the color black

"white""w"[1 1 1]"#FFFFFF"

Sample of the color white

"none"해당 없음해당 없음해당 없음색 없음

다음은 MATLAB®이 여러 유형의 플롯에서 사용하는 디폴트 색의 RGB 3색과 16진수 색 코드입니다.

RGB 3색16진수 색 코드모양
[0 0.4470 0.7410]"#0072BD"

Sample of RGB triplet [0 0.4470 0.7410], which appears as dark blue

[0.8500 0.3250 0.0980]"#D95319"

Sample of RGB triplet [0.8500 0.3250 0.0980], which appears as dark orange

[0.9290 0.6940 0.1250]"#EDB120"

Sample of RGB triplet [0.9290 0.6940 0.1250], which appears as dark yellow

[0.4940 0.1840 0.5560]"#7E2F8E"

Sample of RGB triplet [0.4940 0.1840 0.5560], which appears as dark purple

[0.4660 0.6740 0.1880]"#77AC30"

Sample of RGB triplet [0.4660 0.6740 0.1880], which appears as medium green

[0.3010 0.7450 0.9330]"#4DBEEE"

Sample of RGB triplet [0.3010 0.7450 0.9330], which appears as light blue

[0.6350 0.0780 0.1840]"#A2142F"

Sample of RGB triplet [0.6350 0.0780 0.1840], which appears as dark red

예: [0 0 1]

예: 'blue'

예: '#0000FF'

글꼴 크기로, 0보다 큰 스칼라 값으로 지정됩니다(단위: 포인트). 디폴트 글꼴 크기는 운영 체제와 로캘에 따라 다릅니다.

좌표축 글꼴 크기를 변경하면 MATLAB은 자동으로 컬러바 글꼴 크기를 좌표축 글꼴 크기의 90%로 설정합니다. 컬러바 글꼴 크기를 수동으로 설정하는 경우에는 좌표축 글꼴 크기를 변경해도 컬러바 글꼴에 영향을 미치지 않습니다.

열 개수로, 양의 정수로 지정됩니다. 지정된 개수의 열을 채울 충분한 범례 항목이 없을 경우, 열이 적게 표시될 수 있습니다.

범례 항목을 각 열을 따라 순서대로 표시할지 아니면 각 행을 따라 순서대로 표시할지는 Orientation 속성을 사용하십시오.

예: lgd.NumColumns = 3

출력 인수

모두 축소

Legend 객체. lgd를 사용하면 범례가 생성된 후에 범례의 속성을 보거나 수정할 수 있습니다.

plot(rand(3))
lgd = legend('line1','line2','line3');
lgd.FontSize = 12;
lgd.FontWeight = 'bold';

  • 범례에 50개가 넘는 객체의 레이블을 표시하려면 각 객체에 대한 레이블을 지정하십시오. 그러지 않으면 legend는 그래프에 처음 50개 객체의 레이블만 표시합니다.

알고리즘

  • legend 함수를 다시 호출해도 위치나 방향과 같은 legend 속성은 재설정되지 않습니다. 범례가 존재하는 경우 legend 함수는 기존 범례를 업데이트합니다. Axes 객체는 범례를 하나만 가질 수 있습니다.

  • 범례는 좌표축에서 그래픽스 객체의 가시성을 반영합니다. Visible 속성이 'off'로 설정된 그래픽스 객체는 범례에서 회색 항목으로 나타납니다.

버전 내역

R2006a 이전에 개발됨

모두 확장

참고 항목

함수

속성