이 페이지의 최신 내용은 아직 번역되지 않았습니다. 최신 내용은 영문으로 볼 수 있습니다.

컬러맵 제한 제어하기

사용자가 생성하는 여러 시각화 유형에 대해 MATLAB®은 기본적으로 데이터의 전체 범위를 컬러맵에 매핑합니다. 데이터에서 가장 작은 값은 컬러맵의 첫 번째 행에 매핑되고, 가장 큰 값은 컬러맵의 마지막 행에 매핑됩니다. 모든 중간값은 컬러맵의 중간 행에 선형적으로 매핑됩니다.

이 디폴트 매핑은 대부분의 경우에 유용하지만, 원한다면 선택하는 범위에 대한 매핑을 수행할 수 있습니다. 선택하는 범위가 데이터 범위와 다른 경우에도 가능합니다. 다른 매핑 범위를 선택하면 다음을 수행할 수 있습니다.

  • 데이터가 해당 범위의 제한에서 또는 제한을 벗어나 어느 위치에 있는지 확인할 수 있습니다.

  • 데이터가 해당 범위 내에 어디에 있는지 확인할 수 있습니다.

–10 ≤ x ≤ 10이고 –10 ≤ y ≤ 10인 곡면 Z = X + Y를 고려해 보겠습니다.

[X,Y] = meshgrid(-10:10);
Z = X + Y;
s = surf(X,Y,Z);
xlabel('X');
ylabel('Y');
zlabel('Z = C');
colorbar

곡면 플롯 데이터와 컬러맵 간의 관계 항목에서는 위 경우에서 색을 제어하는 속성을 설명합니다. 본질적으로, Surface 객체의 CData 속성에는 곡면의 각 그리드 점과 컬러맵의 색을 연결하는 배열 C가 포함됩니다. 기본적으로, CZ와 같습니다. 여기서 Z는 그리드 점에서 z = f(x,y) 값을 포함하는 배열입니다. 따라서 색은 Z가 변경됨에 따라 달라집니다.

매핑 범위는 Axes 객체의 CLim 속성으로 제어됩니다. 이 속성에는 [cmin cmax] 형식의, 요소를 2개 가진 벡터가 포함됩니다. cmin의 디폴트 값은 C의 가장 작은 값과 같고, cmax의 디폴트 값은 C의 가장 큰 값과 같습니다. 이 경우, C의 범위는 Z의 범위를 반영하므로, CLim[-20 20]입니다.

CLim[0 20]으로 변경하면 0 이하의 모든 값이 컬러맵의 첫 번째 색에 맞게 잘립니다.

다음 명령은 CLim 속성을 [0 20]으로 변경합니다. 곡면의 아래쪽 절반이 컬러맵의 첫 번째 색(진한 파란색)에 매핑됩니다. 이러한 클리핑이 발생하는 이유는 해당 점에서 C(Z와 같음)가 0 이하이기 때문입니다.

caxis([0 20]);

또한, 매핑 범위를 넓혀서 데이터가 해당 범위 내의 어디에 있는지 확인할 수 있습니다. 예를 들어, 범위를 [-60 20]으로 변경하면 곡면에서 색의 절반만 사용하게 됩니다. 컬러맵의 아래쪽 절반은 C의 범위 외부에 있는 값에 대응되므로 해당 색은 곡면에 나타나지 않습니다.

caxis([-60 20]);

참고

곡면 플롯, 패치, 이미지 또는 컬러맵을 사용하는 모든 그래픽스 객체에 대해 CLim 속성을 설정할 수 있습니다. 그러나 이 속성은 CDataMapping 속성이 'scaled'로 설정된 그래픽스 객체에만 영향을 줍니다. CDataMapping 속성이 'direct'로 설정된 경우에는 C의 모든 값이 스케일링 없이 컬러맵의 요소를 직접 참조합니다. 1보다 작은 C의 모든 값은 컬러맵의 첫 번째 색에 맞게 잘립니다. 컬러맵의 길이보다 큰 C의 모든 값은 컬러맵의 마지막 색에 맞게 잘립니다.

참고 항목

| | |

관련 항목