colororder
여러 데이터 계열의 시각화를 위해 색 순서 설정
설명
예제
플로팅하기 전에 색 설정하기
Figure의 색 순서를 4개의 색으로 설정합니다. x 좌표 벡터 하나와 y 좌표 벡터 4개를 정의합니다. 그런 다음 각 좌표 집합을 플로팅합니다.
newcolors = [0.83 0.14 0.14 1.00 0.54 0.00 0.47 0.25 0.80 0.25 0.80 0.54]; colororder(newcolors) % Define coordinates x = linspace(0,10); y1 = sin(x); y2 = sin(x-0.5); y3 = sin(x-1); y4 = sin(x-1.5); % Plot coordinates plot(x,y1,'LineWidth',2) hold on plot(x,y2,'LineWidth',2) plot(x,y3,'LineWidth',2) plot(x,y4,'LineWidth',2) hold off
플로팅한 후에 색 설정하기
7개의 동심 사분원을 플로팅합니다.
hold on for r=1:7 x = linspace(0,r,500); y = sqrt(r.^2-x.^2); plot(x,y,'LineWidth',15) end
색 순서를 7개의 16진수 색 코드로 변경합니다.
newcolors = {'#F00','#F80','#FF0','#0B0','#00F','#50F','#A0F'}; colororder(newcolors)
막대 그래프의 색 설정하기
3개의 막대 계열을 표시합니다. 그런 다음 색 순서를 파란색, 자주색, 회색으로 설정합니다.
bar([10 20 30; 25 35 45; 30 40 52]) newcolors = [0 0.5 1; 0.5 0 1; 0.7 0.7 0.7]; colororder(newcolors)
두 개의 y축을 갖는 플롯에서 양쪽 축에 색 설정하기
yyaxis
를 호출하기 전에 Figure의 색 순서를 설정하면 각 y축의 색이 설정됩니다. 왼쪽 축은 첫 번째 색을 사용하고 오른쪽 축은 두 번째 색을 사용합니다. 셋 이상의 색을 지정하는 경우 추가 색은 어느 축에서도 사용되지 않습니다.
newcolors
를 두 개의 RGB 3색을 포함하는 행렬로 정의합니다. Figure의 색 순서를 설정하고, 왼쪽 축에 두 개의 선을 플로팅합니다. 그런 다음 오른쪽 축에 두 개의 선을 플로팅합니다.
newcolors = [0.40 0.30 0.90; 0.50 0.65 0.15]; colororder(newcolors) % Left side yyaxis left plot([1 2; 3 4]) % Right side yyaxis right plot([4 3; 2 1])
두 개의 y축을 갖는 플롯에서 활성 축에 색 설정하기
yyaxis
를 호출한 후에 Figure의 색 순서를 설정하면 활성 축의 색이 설정됩니다.
왼쪽 y축을 활성화하고 세 개의 선을 플로팅합니다. 선 스타일 순서를 하나의 실선으로 설정하고 y축 색을 파란색으로 변경합니다. 그런 다음 색 순서를 3가지 파란색 음영으로 설정합니다.
% Left side yyaxis left plot([1 2 3; 4 5 6]) ax = gca; ax.LineStyleOrder = '-'; ax.YColor = 'blue'; leftcolors = [0 0 1; 0 0.50 1; 0 0.80 1]; colororder(leftcolors)
오른쪽 y축을 활성화하고 두 개의 선을 플로팅합니다. y축 색을 검은색으로 변경합니다. 그런 다음 색 순서를 검은색으로 설정합니다.
% Right side yyaxis right plot([4 3; 2 1]) ax.YColor = 'black'; colororder('black')
색 순서에서 데이터 계열 제외하기
색 인수를 사용하여 플로팅 함수를 호출하면 플로팅 함수는 해당 색을 다음번 순서의 색 대신에 사용합니다.
Figure의 색 순서를 빨간색, 자홍색, 파란색으로 설정합니다. scatter
함수를 호출하여 한 계열의 산점을 플로팅합니다. 그런 다음 두 번째 계열의 점을 플로팅하고, 마커를 검은색 별표로 지정합니다.
newcolors = {'red','magenta','blue'}; colororder(newcolors) scatter(1:10,rand(1,10),'filled') hold on scatter(1:10,rand(1,10),'*k')
마커 색을 지정하지 않은 채로 세 번째 계열의 점을 플로팅합니다. 이 계열은 색 순서의 세 번째 색인 파란색을 사용함을 알 수 있습니다.
scatter(1:10,rand(1,10),'filled') hold off
지정된 좌표축의 색 순서 수정하기
타일 형식 차트 레이아웃을 만들고 첫 번째 타일에 세 개의 선을 플로팅합니다.
tiledlayout('flow') nexttile plot([1 2 3; 4 5 6],'LineWidth',2)
반환 인수와 함께 nexttile
함수를 호출하여 두 번째 타일의 axes 객체를 가져옵니다. 두 번째 타일에 세 개의 선을 플로팅합니다. 그런 다음 좌표축의 색 순서 행렬을 가져오고 출력값을 C
에 반환합니다. C
의 첫 번째 색을 자주색으로 변경하고, 좌표축 색 순서를 수정된 C
행렬로 설정합니다.
ax = nexttile;
plot(ax,[4 5 6; 1 2 3],'LineWidth',2)
C = colororder(ax);
C(1,:) = [0.5 0 1];
colororder(ax,C)
입력 인수
newcolors
— 새로운 색
RGB 3색으로 구성된 행렬 | 색 이름으로 구성된 배열 | 'default'
새로운 색으로, RGB 3색으로 구성된 행렬, 색 이름으로 구성된 배열 또는 'default'
로 지정됩니다.
RGB 3색으로 구성된 행렬
각 행이 RGB 3색인 m×3 행렬을 지정합니다. RGB 3색은 요소를 3개 가진 벡터로, 각 요소는 색을 구성하는 빨간색, 녹색, 파란색의 농도를 포함합니다. 농도의 범위는 [0,1]
이어야 합니다. 예를 들어, 다음 행렬은 파란색, 짙은 녹색, 주황색을 새로운 색으로 정의합니다.
newcolors = [1.0 0.0 0.0 0.0 0.4 0.0 1.0 0.5 0.0];
색 이름 또는 16진수 색 코드로 구성된 배열
색 이름, 짧은 이름 또는 16진수 색 코드의 임의 조합을 지정합니다.
하나의 색을 지정하려면
newcolors
를 문자형 벡터 또는 string형 스칼라로 설정하십시오. 예를 들어,newcolors = 'red'
는 빨간색을 색 순서의 유일한 색으로 지정합니다.여러 색을 지정하려면
newcolors
를 문자형 벡터로 구성된 셀형 배열 또는 string형 배열로 설정하십시오. 예를 들어,newcolors = {'red','green','blue'}
는 색을 빨간색, 녹색, 파란색으로 지정합니다.
16진수 색 코드는 해시 기호(#
)로 시작하고 그 뒤에 3자리 또는 6자리의 16진수 숫자(0
에서 F
사이일 수 있음)가 옵니다. 이 값은 대/소문자를 구분하지 않습니다. 따라서 색 코드 '#FF8800'
, '#ff8800'
, '#F80'
및 '#f80'
은 모두 동일합니다.
다음 표에는 색 이름 및 짧은 이름과 그에 해당하는 RGB 3색 및 16진수 색 코드가 나와 있습니다.
색 이름 | 짧은 이름 | RGB 3색 | 16진수 색 코드 | 모양 |
---|---|---|---|---|
"red" | "r" | [1 0 0] | "#FF0000" | |
"green" | "g" | [0 1 0] | "#00FF00" | |
"blue" | "b" | [0 0 1] | "#0000FF" | |
"cyan" | "c" | [0 1 1] | "#00FFFF" | |
"magenta" | "m" | [1 0 1] | "#FF00FF" | |
"yellow" | "y" | [1 1 0] | "#FFFF00" | |
"black" | "k" | [0 0 0] | "#000000" | |
"white" | "w" | [1 1 1] | "#FFFFFF" |
디폴트 색
'default'
를 지정하면 색 순서가 7가지 디폴트 색으로 설정됩니다. 이 옵션은 색 순서를 임시로 변경했다가 원래대로 재설정하는 경우에 유용합니다. 다음은 디폴트 색의 RGB 3색과 16진수 색 코드입니다.
RGB 3색 | 16진수 색 코드 | 모양 |
---|---|---|
[0 0.4470 0.7410] | "#0072BD" | |
[0.8500 0.3250 0.0980] | "#D95319" | |
[0.9290 0.6940 0.1250] | "#EDB120" | |
[0.4940 0.1840 0.5560] | "#7E2F8E" | |
[0.4660 0.6740 0.1880] | "#77AC30" | |
[0.3010 0.7450 0.9330] | "#4DBEEE" | |
[0.6350 0.0780 0.1840] | "#A2142F" |
데이터형: single
| double
| char
| cell
| string
target
— 대상 좌표축, Figure 또는 차트
Figure | 좌표축 | 독립형 시각화
대상으로, 다음 값 중 하나로 지정됩니다.
Figure. 새로운 색이 Figure에 있는 모든 좌표축의 내용에 영향을 줍니다.
임의 유형의 axes 객체:
Axes
객체,PolarAxes
객체 또는GeographicAxes
객체. 새로운 색이 지정된 좌표축의 내용에만 영향을 줍니다.stackedplot
,scatterhistogram
,parallelplot
또는geobubble
함수를 사용하여 만든 독립형 시각화.
세부 정보
색 순서
색 순서는 MATLAB이 좌표축 내에서 여러 데이터 계열을 플로팅하는 데 사용하는 색 집합을 제어합니다. Line
객체, Scatter
객체, Bar
객체와 같은 그래픽스 객체는 객체의 생성 순서에 따라 색이 할당됩니다.
색은 좌표축의 ColorOrder
속성에 행렬로 저장됩니다. colororder
함수를 호출하면 행렬이 대체됩니다.
팁
Figure의 색 순서를 설정하면 플로팅 함수를 호출할 때 색이 그대로 유지됩니다. 그러나
colororder
함수에 axes 객체를 전달하는 경우에는 플로팅 함수를 호출할 때 먼저hold on
을 호출해야 색이 그대로 유지됩니다.좌표축에서
ColorOrderIndex
또는LineStyleOrderIndex
속성을 설정하면 새로운 색 순서가 기존 플롯에 영향을 주지 않습니다.hold on
을 호출한 다음 플로팅 함수를 호출하는 경우에만 새로운 색이 적용됩니다.
버전 내역
R2019b에 개발됨
MATLAB 명령
다음 MATLAB 명령에 해당하는 링크를 클릭했습니다.
명령을 실행하려면 MATLAB 명령 창에 입력하십시오. 웹 브라우저는 MATLAB 명령을 지원하지 않습니다.
Select a Web Site
Choose a web site to get translated content where available and see local events and offers. Based on your location, we recommend that you select: .
You can also select a web site from the following list:
How to Get Best Site Performance
Select the China site (in Chinese or English) for best site performance. Other MathWorks country sites are not optimized for visits from your location.
Americas
- América Latina (Español)
- Canada (English)
- United States (English)
Europe
- Belgium (English)
- Denmark (English)
- Deutschland (Deutsch)
- España (Español)
- Finland (English)
- France (Français)
- Ireland (English)
- Italia (Italiano)
- Luxembourg (English)
- Netherlands (English)
- Norway (English)
- Österreich (Deutsch)
- Portugal (English)
- Sweden (English)
- Switzerland
- United Kingdom (English)