1

私は現在Matlabを使用しており、各列が独立したデータセットである行列の行の内容をプロットしています。マトリックスが大きいので、各データセットのプロットラベルを個別に作成するという面倒な作業を行う必要がないので、各列のハンドル/名前をに含める特定の方法があるかどうか疑問に思いました。プロットラベルが自動的に適用され、列がマトリックスに追加またはマトリックスから削除された場合にそれに応じて調整されるような方法ですか?

ありがとう!

詳細(役立つ場合):光ファイバー増幅器の増幅自然放出(ASE)。行は離散化されたASEスペクトルのストレージとして機能し、列はファイバー増幅器に沿った特定の位置(この位置、つまりラベルとして使用する列に対応するファイバーに沿った距離)であり、各要素には次のものが含まれます。電力情報。プロットは、ファイバの長さに沿ったさまざまな位置でのファイバ内のASEのスペクトルパワーを示しています。

4

1 に答える 1

0

ラベルによってプロットの凡例を意味する場合は、セルを使用してそれを行うことができます。行列 A を考える

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

A =

 1     2     3
 1     2     3
 1     2     3

plot を呼び出して、行列の列をプロットできます

plot(A);

ここでは、y=1、2、および 3 に 3 本の水平線が表示されます。凡例は次のように作成できます。

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

次に、入力します

legend(l)

伝説を見せる。ただし、誰も凡例を作成しないため、セル配列を自分で作成する必要があります。もちろん、自動的に行うこともできます。たとえば、上記の凡例は単純なループで作成できます。

for i=1:size(A, 2)
   l{i} = ['dataset' num2str(i)];
end
于 2012-09-18T15:58:25.267 に答える