Main Content

normplot

정규 확률 플롯

설명

예제

normplot(x)x에 있는 데이터의 분포를 정규분포와 비교하는 정규 확률 플롯을 생성합니다.

normplot은 플러스 기호('+') 마커를 사용하여 x의 각 데이터 점을 플로팅하고 이론적 분포를 나타내는 두 개의 기준선을 그립니다. 실선 기준선은 데이터의 제1사분위수와 제3사분위수를 연결하고, 파선 기준선은 실선을 데이터의 끝까지 연장합니다. 표본 데이터가 정규분포를 가지는 경우 데이터 점이 기준선을 따라 표시됩니다. 정규분포가 아닌 분포는 데이터 플롯에 곡률을 도입합니다.

normplot(ax,x)ax로 지정된 좌표축에 정규 확률 플롯을 추가합니다.

예제

h = normplot(___)은 위에 열거된 구문을 사용하여, 플로팅된 선에 대응하는 그래픽스 핸들을 반환합니다.

예제

모두 축소

mu = 10sigma = 1인 정규분포에서 임의 표본 데이터를 생성합니다.

rng default;  % For reproducibility
x = normrnd(10,1,25,1);

표본 데이터의 정규 확률 플롯을 생성합니다.

figure;
normplot(x)

Figure contains an axes object. The axes object with title Normal Probability Plot, xlabel Data, ylabel Probability contains 3 objects of type line. One or more of the lines displays its values using only markers

이 플롯은 데이터가 정규분포를 따름을 나타냅니다.

4개의 서로 다른 분포에서 각각 50개의 난수를 생성합니다. 표준 정규분포, 자유도가 5인 스튜던트 t 분포("두꺼운 꼬리" 분포), mu가 0, sigma가 1, 왜도가 0.5, 첨도가 3인 Pearson 난수 집합("오른쪽이 비스듬한" 분포), mu가 0, sigma가 1, 왜도가 -0.5, 첨도가 3인 Pearson 난수 집합("왼쪽이 비스듬한" 분포).

rng(11)  % For reproducibility
x1 = normrnd(0,1,[50,1]);
x2 = trnd(5,[50,1]);
x3 = pearsrnd(0,1,0.5,3,[50,1]);
x4 = pearsrnd(0,1,-0.5,3,[50,1]);

각 분포의 pdf를 시각적으로 비교하기 위해 동일한 Figure에 4개의 히스토그램을 플로팅합니다.

figure
subplot(2,2,1)
histogram(x1,10)
title('Normal')
axis([-4,4,0,15])

subplot(2,2,2)
histogram(x2,10)
title('Fat Tails')
axis([-4,4,0,15])

subplot(2,2,3)
histogram(x3,10)
title('Right-Skewed')
axis([-4,4,0,15])

subplot(2,2,4)
histogram(x4,10)
title('Left-Skewed')
axis([-4,4,0,15])

Figure contains 4 axes objects. Axes object 1 with title Normal contains an object of type histogram. Axes object 2 with title Fat Tails contains an object of type histogram. Axes object 3 with title Right-Skewed contains an object of type histogram. Axes object 4 with title Left-Skewed contains an object of type histogram.

히스토그램은 각 표본이 정규분포와 어떻게 다른지 보여줍니다.

각 표본에 대한 정규 확률 플롯을 생성합니다.

figure
subplot(2,2,1)
normplot(x1)
title('Normal')

subplot(2,2,2)
normplot(x2)
title('Fat Tails')

subplot(2,2,3)
normplot(x3)
title('Right-Skewed')

subplot(2,2,4)
normplot(x4)
title('Left-Skewed')

Figure contains 4 axes objects. Axes object 1 with title Normal, xlabel Data, ylabel Probability contains 3 objects of type line. One or more of the lines displays its values using only markers Axes object 2 with title Fat Tails, xlabel Data, ylabel Probability contains 3 objects of type line. One or more of the lines displays its values using only markers Axes object 3 with title Right-Skewed, xlabel Data, ylabel Probability contains 3 objects of type line. One or more of the lines displays its values using only markers Axes object 4 with title Left-Skewed, xlabel Data, ylabel Probability contains 3 objects of type line. One or more of the lines displays its values using only markers

2개의 서로 다른 분포에서 각각 50개의 난수를 포함하는 50×2 행렬을 생성합니다. 열 1의 표준 정규분포 및 열 2의 mu가 0, sigma가 1, 왜도가 0.5, 첨도가 3인 Pearson 난수 집합("오른쪽이 비스듬한" 분포).

rng default  % For reproducibility
x = [normrnd(0,1,[50,1]) pearsrnd(0,1,0.5,3,[50,1])];

동일한 Figure의 두 표본에 대한 정규 확률 플롯을 생성합니다. 플롯 선 그래픽 핸들을 반환합니다.

figure
h = normplot(x)
h = 
  6x1 Line array:

  Line
  Line
  Line
  Line
  Line
  Line

legend({'Normal','Right-Skewed'},'Location','southeast')

Figure contains an axes object. The axes object with title Normal Probability Plot, xlabel Data, ylabel Probability contains 6 objects of type line. One or more of the lines displays its values using only markers These objects represent Normal, Right-Skewed.

핸들 h(1) 및 h(2)는 각각 정규분포의 데이터 점과 편중된 분포의 데이터 점에 대응합니다. 핸들 h(3) 및 h(4)는 표본 데이터에 피팅된 제2사분위수 선과 제3사분위수 선에 대응합니다. 핸들 h(5) 및 h(6)은 각 표본 데이터 세트의 최솟값 및 최댓값까지 확장되는 외삽 선에 대응합니다.

이를 나타내기 위해, 정규분포 데이터 표본(h(3)으로 표시)에 대한 제2사분위수 선과 제3사분위수 선의 너비를 2로 늘립니다.

h(3).LineWidth = 2;
h(4).LineWidth = 2;

Figure contains an axes object. The axes object with title Normal Probability Plot, xlabel Data, ylabel Probability contains 6 objects of type line. One or more of the lines displays its values using only markers These objects represent Normal, Right-Skewed.

입력 인수

모두 축소

표본 데이터로, 숫자형 벡터나 숫자형 행렬로 지정됩니다. normplot은 기호 '+'를 사용하여 x의 각 값을 표시합니다. x가 행렬인 경우, normplotx의 각 열에 대해 별개의 선을 표시합니다.

데이터형: single | double

대상 좌표축으로, Axes 객체 또는 UIAxes 객체로 지정됩니다. normplot 함수는 ax로 지정된 좌표축에 플롯을 추가합니다. 자세한 내용은 Axes 속성UIAxes 속성 항목을 참조하십시오.

현재 Figure의 현재 좌표축을 반환하려면 gca를 사용하십시오.

출력 인수

모두 축소

line 객체의 그래픽스 핸들로, Line 그래픽스 핸들로 구성된 벡터로 반환됩니다. 그래픽스 핸들은 플롯에서 특정 선의 속성을 쿼리하고 수정하는 데 사용할 수 있는 고유 식별자입니다. x의 각 열에 대해 normplot은 다음 세 개의 핸들을 반환합니다.

  • 데이터 점을 나타내는 선. normplot은 플러스 기호('+') 마커를 사용하여 x의 각 데이터 점을 나타냅니다.

  • x의 각 열의 제1사분위수와 제3사분위수를 연결하는 선(실선으로 표시됨).

  • x의 최솟값 및 최댓값에까지 연장한 분위수 선의 외삽(파선으로 표시됨).

line 객체의 속성을 보고 설정하려면 점 표기법을 사용하십시오. 점 표기법 사용에 대한 자세한 내용은 속성값 액세스 항목을 참조하십시오. 설정할 수 있는 Line 속성에 대한 자세한 내용은 Line 속성 항목을 참조하십시오.

알고리즘

normplot은 표본 데이터의 분위수를 정규분포의 분위수와 일치시킵니다. 표본 데이터가 정렬되어 x축에 플로팅됩니다. y축은 확률 값으로 변환된, 정규분포의 분위수를 나타냅니다. 그러므로 y축 스케일링은 선형이 아닙니다.

x축 값이, 크기가 N인 표본에서 i번째로 정렬된 값인 경우, y축 값은 데이터의 경험적 누적 분포 함수의 계산 지점 사이에 있는 중간점입니다. 중간점은 (i0.5)N와 동일합니다.

normplot은 플롯의 선형성을 평가하기 위해 기준선을 중첩합니다. 선은 데이터의 제1사분위수와 제3사분위수를 지납니다.

대체 기능

probplot 함수를 사용하여 확률 플롯을 생성할 수 있습니다. probplot 함수를 사용하면 중도절단된 데이터를 표시하고 확률 플롯의 분포를 지정할 수 있습니다.

버전 내역

R2006a 이전에 개발됨