2012-09-18 3 views
1

현재 Matlab을 사용하고 있으며 각 행이 독립적 인 데이터 세트 인 행의 내용을 플로팅하고 있습니다. 행렬이 커지므로 각 데이터 세트의 줄거리 레이블을 작성하는 tedius 작업을 수행하지 않아도되므로 각 열의 핸들/이름을 포함하는 특정 방법이 있는지 궁금합니다. 플롯 라벨을 자동으로 적용하여 매트릭스가 추가되거나 제거되는 경우 그에 따라 조정됩니다.개별 행렬/행/요소에 대한 핸들 - Matlab

감사합니다.

특수한 경우 : 광섬유 증폭기에서 증폭 자발 방출 (ASE). 행은 이산 된 ASE 스펙트럼의 저장 장치 역할을하며, 열은 광 증폭기를 따라 주어진 위치입니다 (이 위치 - 열에 해당하는 광섬유를 따라 거리 -이 값을 레이블로 사용하고자합니다). 각 요소에는 전원 정보. 그 플롯은 그 길이를 따라 상이한 위치에 대해 ASE의 스펙트럼 파워를 섬유에 제공한다.

답변

0

레이블로 플롯 범례를 나타내는 경우 셀을 사용하여 수행 할 수 있습니다. 당신은 Y에서 3 수평선 = 1, 2, 3. 당신은 당신의 전설을 만들 수 있습니다를 얻을 것이다, 당신은 줄거리를 호출 할 수 있습니다

A = repmat([1:3], 3, 1) 

A = 

1  2  3 
1  2  3 
1  2  3 

A가

plot(A); 

다음은 행렬의 열을 플롯 행렬 고려

l{1} = 'dataset1'; 
l{2} = 'dataset2'; 
l{3} = 'dataset3'; 

을 다음과 같이 그럼 당신은

legend(l) 
을 입력 범례를 표시하려면

. 그러나 아무도 당신을위한 범례를 만들지 않으므로 직접 셀 배열을 만들어야합니다. 물론 자동으로 처리 할 수 ​​있습니다. 위의 범례는 간단한 루프로 만들 수 있습니다.

for i=1:size(A, 2) 
    l{i} = ['dataset' num2str(i)]; 
end 
+0

우수! 고마워. – James

관련 문제