Main Content

pareto

  • Pareto chart

설명

예제

pareto(y)y의 파레토 차트를 만듭니다. 파레토 차트는 내림차순으로 정렬된 막대로 구성된 막대 차트이며 누적 분포를 표시하는 선을 포함합니다. 차트는 누적 분포의 95%를 구성하는 가장 큰 막대를 최대 10개까지 표시합니다. n개의 막대가 정확히 분포의 95%를 포함하고 있고 n10보다 작으면 차트에는 n+1개의 막대가 표시됩니다.

x축에서의 막대 레이블은 y 벡터의 막대값에 대한 인덱스입니다.

예제

pareto(y,x)는 막대의 x 좌표(또는 레이블)를 지정합니다. yx 모두 길이가 동일해야 합니다.

예제

pareto(___,threshold)01 사이의 임계값을 지정합니다. 임계값은 차트에 포함할 누적 분포의 비율입니다. 차트는 이 비율을 구성하는 가장 큰 막대를 최대 10개까지 포함합니다. n개의 막대가 정확히 지정된 비율만큼 포함하고 있고 n10보다 작으면 차트에는 n+1개의 막대가 표시됩니다.

예제

pareto(target,___)는 지정된 대상 좌표축에서 차트를 만듭니다.

charts = pareto(___)BarLine 객체를 배열로 반환합니다. 이 객체로 속성을 설정하여 파레토 차트의 특성을 수정할 수 있습니다. 속성 목록은 Bar 속성Line 속성 항목을 참조하십시오.

예제

[charts,ax] = pareto(___)는 객체를 charts 배열로 반환하고 추가적으로 2개의 Axes 객체로 구성된 배열도 반환합니다. 이 객체로 속성을 설정하여 차트의 특성을 수정할 수 있습니다. 속성 목록은 Axes 속성, Bar 속성, Line 속성을 참조하십시오.

예제

모두 축소

y를 5개 숫자의 합이 100이 되는 벡터로 정의합니다. 이렇게 하면 차트에서 숫자와 막대 사이의 관계를 확인할 수 있습니다.

그런 다음 x 좌표를 지정하지 않고 y의 파레토 차트를 만듭니다. x축 눈금 레이블은 y의 막대값의 위치입니다. 이 경우 y(3)이 가장 큰 값이므로 이 막대가 제일 왼쪽에 표시되고 뒤이어 y(5)y(4)가 표시됩니다. 이 3개의 막대로 누적 분포의 95%를 넘기 때문에 이들 막대만 차트에 표시됩니다.

y = [2 3 45 20 32];
pareto(y)

Figure contains 2 axes objects. Axes object 1 contains 2 objects of type bar, line. Axes object 2 is empty.

가장 큰 n개의 막대가 정확히 누적 분포의 95%이면 pareto는 차트에 n+1개의 막대를 포함시킵니다. 예를 들어, 2개의 막대가 정확히 데이터의 95%를 포함하는 y를 정의해 보겠습니다. pareto는 가장 큰 3개의 막대를 표시합니다.

y = [4 1 40 55];
pareto(y)

Figure contains 2 axes objects. Axes object 1 contains 2 objects of type bar, line. Axes object 2 is empty.

파레토 차트를 사용하여 참가자 200명을 대상으로 한 설문 조사로 좋아하는 파이 종류를 조사합니다. x는 5가지 파이 맛을 포함하는 string형 벡터로 정의하고 y는 각 맛에 대한 투표 수로 정의합니다. 파레토 차트를 만들고 threshold 인수를 1로 설정하여 누적 분포의 모든 값을 포함합니다.

x = ["Chocolate" "Apple" "Pecan" "Cherry" "Pumpkin"];
y = [35 50 30 5 80];
pareto(y,x,1)
ylabel('Votes')

Figure contains 2 axes objects. Axes object 1 with ylabel Votes contains 2 objects of type bar, line. Axes object 2 is empty.

x를 프로젝트에 참여한 8명의 프로그래머 이름을 포함하는 string형 벡터로 정의합니다. y를 각 프로그래머가 작성한 코드 라인의 수로 정의합니다. 파레토 차트에서 제목과 함께 데이터를 표시합니다.

x = ["Fred" "Gina" "Norman" "Josphat" "Julia" "Wally" "Heidi" "Pat"];
y = [200 120 555 608 1024 101 57 687];
pareto(y,x)
title('Lines of Code by Programmer')

Figure contains 2 axes objects. Axes object 1 with title Lines of Code by Programmer contains 2 objects of type bar, line. Axes object 2 is empty.

x를 특정 공장에서 제조한 5개의 모델 로켓 이름으로 구성된 categorical형 벡터로 정의합니다. y를 각 범주에서 무작위로 샘플링된, 발사에 실패한 로켓의 수로 정의합니다. 파레토 차트에 데이터를 표시하고 x 축과 y 축에 레이블을 추가합니다.

x = categorical(["Firestorm" "Mr. Ballista" "Moonshot" "Lil' Joe" "Houston"]); 
y = [526 100 221 40 10];
pareto(y,x)
xlabel('Rocket Model')
ylabel('Launch Failures')

Figure contains 2 axes objects. Axes object 1 with xlabel Rocket Model, ylabel Launch Failures contains 2 objects of type bar, line. Axes object 2 is empty.

x를 특정 전자부품의 제조날짜를 표시하는 datetime형 벡터로 정의합니다. y를 각 부품 배치마다 나온 결함의 수로 정의합니다. 파레토 차트에 데이터를 표시하고 x 축과 y 축에 레이블을 추가합니다.

x = datetime(2018,5,1:5,'Format','d MMM');
y = [100 526 221 60 49];
pareto(y,x)
xlabel('Manufacturing Date')
ylabel('Defects')

Figure contains 2 axes objects. Axes object 1 with xlabel Manufacturing Date, ylabel Defects contains 2 objects of type bar, line. Axes object 2 is empty.

y를 5개의 숫자로 구성된 벡터로 정의하고 파레토 차트를 만듭니다. 차트와 좌표축의 특성을 사용자 지정할 수 있도록 반환 인수를 지정합니다.

y = [20 30 10 55 5];
[charts, ax] = pareto(y);

Figure contains 2 axes objects. Axes object 1 contains 2 objects of type bar, line. Axes object 2 is empty.

charts 배열을 사용하여 BarLine 객체의 색을 변경합니다. charts의 첫 번째 요소가 Bar 객체이고 두 번째 요소가 Line 객체입니다. 막대 색을 자주색 음영으로 변경하고 선 색을 녹색 음영으로 변경합니다.

charts(1).FaceColor = [0.50  0.37  0.60];
charts(2).Color = [0 0.50 0.10];

Figure contains 2 axes objects. Axes object 1 contains 2 objects of type bar, line. Axes object 2 is empty.

그 다음에는 왼쪽 y축의 색을 막대 색과 일치하게 변경하고 오른쪽 y축의 색을 선 색과 일치하게 변경합니다. 왼쪽에 있는 Axes 객체가 ax 배열의 첫 번째 요소입니다. 다른 Axes 객체는 ax 배열의 두 번째 요소입니다.

색을 변경한 후 좌표축 그리드 선을 표시합니다.

ax(1).YColor = [0.50 0.37 0.60];
ax(2).YColor = [0 0.50 0.10];
grid on

Figure contains 2 axes objects. Axes object 1 contains 2 objects of type bar, line. Axes object 2 is empty.

Figure에서 여러 개의 차트를 만들려면 타일 형식 차트 레이아웃을 사용합니다. nexttile 함수를 호출하여 타일 형식 차트 레이아웃에 axes 객체를 만듭니다. 사용할 수 있는 레이아웃이 없을 경우 nexttile이 레이아웃을 생성합니다. 좌표축을 pareto 함수에 첫 번째 인수로 전달하여 파레토 차트를 만듭니다.

ax1 = nexttile;
pareto(ax1,[20 50 33 12])

Figure contains 2 axes objects. Axes object 1 contains 2 objects of type bar, line. Axes object 2 is empty.

nexttile 함수를 호출하여 두 번째 axes 객체를 레이아웃에 추가합니다. 그런 다음 두 번째 파레토 차트를 만듭니다.

ax2 = nexttile;
pareto(ax2,[50 10 20 25 30])

Figure contains 4 axes objects. Axes object 1 contains 2 objects of type bar, line. Axes object 2 is empty. Axes object 3 contains 2 objects of type bar, line. Axes object 4 is empty.

입력 인수

모두 축소

y 좌표 또는 막대 높이로, 음이 아닌 유한한 숫자형 값으로 구성된 벡터로 지정됩니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64

x 좌표 또는 막대 레이블로, y와 길이가 같은 벡터로 지정됩니다. 벡터의 값은 음이 아닌 유한한 숫자형 값, datetime형 값, duration형 값 또는 categorical형 값이 될 수 있습니다.

데이터형: single | double | int8 | int16 | int32 | int64 | uint8 | uint16 | uint32 | uint64 | categorical | datetime | duration

차트에 포함할 누적 분포의 비율로, 01 사이의 숫자로 지정됩니다.

pareto는 누적 분포를 나타내는 막대를 내림차순으로 임계값을 넘어설 때까지 최대 10개 표시합니다.

예: pareto([70 15 10 5],0.75)는 누적 분포의 75%를 포함하는 가장 큰 막대를 표시합니다.

예: pareto([70 15 10 5],0.85)는 누적 분포의 85%를 포함하는 가장 큰 막대를 표시합니다.

예: pareto([70 15 10 5],1)y의 길이가 10보다 작으므로 모든 막대를 표시합니다.

예: pareto(1:11,1)y의 길이가 10보다 크므로 가장 큰 막대를 10개까지만 표시합니다.

대상 좌표축으로, Axes 객체로 지정됩니다. 좌표축을 지정하지 않을 경우 현재 좌표축이 카테시안(Cartesian)이면 pareto는 현재 좌표축을 사용합니다.

확장 기능

버전 내역

R2006a 이전에 개발됨

참고 항목

함수

속성