Main Content

binscatter

비닝된 산점도 플롯

설명

예제

binscatter(x,y)는 벡터 xy의 비닝된 산점도 플롯을 표시합니다. 비닝된 산점도 플롯은 데이터 공간을 직사각형 Bin으로 분할하고 각 Bin에 있는 데이터 점 도수를 다양한 색을 사용하여 표시합니다. 플롯을 확대할 때 더 자세한 정보를 나타내도록 Bin 크기가 자동으로 조정됩니다.

예제

binscatter(x,y,N)은 사용할 Bin 개수를 지정합니다. N은 스칼라이거나 요소를 2개 가진 벡터 [Nx Ny]일 수 있습니다. N이 스칼라이면 NxNy 모두 스칼라 값으로 설정됩니다. 각 차원의 최대 Bin 개수는 250입니다.

binscatter(___,Name,Value)는 하나 이상의 이름-값 쌍의 인수를 사용하여 속성값을 지정합니다. 예를 들어, 'ShowEmptyBins''on'으로 지정하여 데이터 점이 없는 영역에 색을 지정할 수 있습니다. 전체 속성 목록은 Binscatter 속성을 참조하십시오. 위에 열거된 구문에 나와 있는 입력 인수를 조합하여 이 옵션과 함께 사용하십시오.

binscatter(ax,___)는 현재 좌표축(gca) 대신 ax로 지정된 좌표축에 플로팅됩니다. ax 입력 인수는 위에 열거된 구문의 입력 인수 조합보다 먼저 나올 수 있습니다.

예제

h = binscatter(___)Binscatter 객체를 반환합니다. 이 객체를 사용하면 비닝된 산점도 플롯의 속성을 검토하고 조정할 수 있습니다.

예제

모두 축소

x 차원과 y 차원 모두에 난수를 생성하고 비닝된 산점도 플롯을 만듭니다. binscatter 함수가 자동으로 데이터의 값 범위를 포괄하기에 적합한 Bin 개수를 선택합니다.

x = randn(1e6,1);
y = 2*x + randn(1e6,1);
binscatter(x,y)

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

10,000개의 난수로 구성된 비닝된 산점도 플롯을 x 차원에서 30개 Bin, y 차원에서 10개 Bin으로 분류하여 플로팅합니다.

rng default % for reproducibility
x = randn(1e4,1);
y = randn(1e4,1);
h = binscatter(x,y,[30 10]);

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

Bin 도수를 구합니다. 그 결과 행렬이 생성되는데 이 행렬의 왼쪽 위 요소는 플롯의 왼쪽 맨 아래에 있는 Bin의 도수에 상응합니다. 행에는 x개 Bin이 있고 열에는 y개 Bin이 있습니다.

counts = h.Values;

임의의 데이터 점들로 구성된 비닝된 산점도 플롯을 만듭니다.

x = randn(1e5,1);
y = randn(1e5,1);
binscatter(x,y)

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

디폴트 컬러맵의 범위는 연한 색(작은 값)에서 진한 색(큰 값)까지입니다. 작은 값에 진한 색을 사용하는 컬러맵으로 바꾸면 이상값을 찾기가 더 쉬울 수 있습니다.

colormap 함수를 사용하여 플롯의 색을 변경합니다. gca를 사용하여 현재 axes 핸들을 전달합니다.

colormap(gca,'parula')

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

10,000개의 난수를 생성하고 비닝된 산점도 플롯을 만듭니다. 전체 플롯을 다시 만들지 않고 Binscatter 객체를 반환하여 플롯의 속성을 조정합니다.

x = randn(1000,1);
y = randn(1000,1);
h = binscatter(x,y)

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

h = 
  Binscatter with properties:

      NumBins: [11 11]
    XBinEdges: [-3.2764 -2.6485 -2.0206 -1.3927 -0.7648 -0.1369 0.4910 1.1189 1.7468 2.3747 3.0026 3.6305]
    YBinEdges: [-3.1155 -2.5034 -1.8914 -1.2794 -0.6674 -0.0553 0.5567 1.1687 1.7808 2.3928 3.0048 3.6168]
       Values: [11x11 double]
      XLimits: [-3.2764 3.6305]
      YLimits: [-3.1155 3.6168]
    FaceAlpha: 1

  Use GET to show all properties

각 축에 사용할 Bin 개수를 정확하게 지정합니다.

h.NumBins = [20 30];

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

플롯에서 빈 Bin의 표시를 켭니다.

h.ShowEmptyBins = 'on';

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

XLimits 속성과 YLimits 속성으로 좌표축의 범위를 지정합니다. 그런 다음 x축의 Bin 제한을 벡터로 제한합니다.

xlim(gca,h.XLimits); 
ylim(gca,h.YLimits); 
h.XLimits = [-1 1];

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

입력 인수

모두 축소

입력 벡터로, 같은 길이의 실수형 벡터로 지정됩니다.

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

Bin 개수로, 스칼라 또는 요소를 2개 가진 벡터 [Nx Ny]로 지정됩니다.

  • N이 요소를 2개 가진 벡터 [Nx Ny]이면 binscatter에서는 x 차원에서 Nx개 Bin과 y 차원에서 Ny개 Bin을 사용합니다.

  • N이 스칼라이면 NxNy 모두 스칼라 값으로 설정됩니다.

좌표축이 확대되지 않을 때, binscatter 함수는 초기 플롯에서 x 차원과 y 차원에 있는 Nx개 Bin과 Ny개 Bin을 사용합니다. (XLimMode 속성과 YLimMode 속성이 모두 'auto'일 때 좌표축은 확대되지 않습니다.) 확대/축소할 때, binscatter 함수는 플롯의 가시 부분이 대략 Nx×Ny개 Bin으로 분할되도록 Bin 개수를 조정하여 Bin 크기를 유지합니다.

각 차원의 최대 Bin 개수는 250입니다. 디폴트 Bin 개수는 데이터 크기와 표준편차를 기준으로 계산되며 100을 초과하지 않습니다.

예: [10 20]

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

대상 좌표축으로, Axes 객체로 지정됩니다. 좌표축을 지정하지 않으면 binscatter는 현재 좌표축(gca)을 사용합니다.

이름-값 인수

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

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

예: binscatter(x,y,'ShowEmptyBins','on')은 플롯에서 비어 있는 Bin의 표시를 켭니다.

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

x 차원의 데이터 제한으로, 요소를 2개 가진 벡터 [Xmin Xmax]로 지정됩니다.

binscatter는 지정된 데이터 제한(XminXXmax) 내(끝점 포함)에 있는 데이터 점만 표시합니다.

예: [0 10]

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

y 차원의 데이터 제한으로, 요소를 2개 가진 벡터 [Ymin Ymax]로 지정됩니다.

binscatter는 지정된 데이터 제한(YminYYmax) 내(끝점 포함)에 있는 데이터 점만 표시합니다.

예: [0 10]

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

비어 있는 Bin을 표시할지 여부로, 'off' 또는 'on'나 숫자형 값 또는 논리값 1(true) 또는 0(false)으로 지정됩니다. 값 'on'true와 동일하고 값 'off'false와 동일합니다. 따라서 이 속성의 값을 논리값으로 사용할 수 있습니다. 값은 matlab.lang.OnOffSwitchState 유형의 on/off 논리값으로 저장됩니다.

플롯에서 Bin 제한 범위 내에 있지만 데이터 점이 없는 타일에 색을 지정하려면 'on' 또는 true를 지정하십시오.

출력 인수

모두 축소

Binscatter 객체. 이 객체를 사용하면 플롯의 속성을 검토하고 조정할 수 있습니다. 전체 속성 목록은 Binscatter 속성을 참조하십시오.

  • 몇 개의 Bin이 플롯의 대부분을 차지하고 있을 경우 좌표축의 ColorScale 속성을 'log'로 변경하여 Bin의 색 지정을 개선할 수 있습니다.

    ax = gca;
    ax.ColorScale = 'log';

확장 기능

버전 내역

R2017b에 개발됨