箱から出してこれを直接行う方法がわかりません。簡単な方法は、各行の色/スタイルを手動で設定することです。
これがより自動化されたソリューションです。ドキュメントから抜粋した例から始めましょう。
%# defaults are set sometime before
set(0, 'DefaultAxesColorOrder',[1 0 0;0 1 0;0 0 1], ...
'DefaultAxesLineStyleOrder','-|--|:')
%# do plotting as usual
t = 0:pi/20:2*pi;
a = zeros(length(t),9);
for i = 1:9
a(:,i) = sin(t-i/5)';
end
h = plot(t,a);
質問で説明したように、デフォルトの動作では、最初に色を循環し、次に線のスタイルを循環します。それらを個別に適用する場合は、次のことを試してください。
c = num2cell(get(0,'DefaultAxesColorOrder'),2);
l = cellstr(get(0,'DefaultAxesLineStyleOrder'));
set(h, {'Color'}, c(rem((1:numel(h))-1,numel(c))+1), ...
{'LineStyle'}, l(rem((1:numel(h))-1,numel(l))+1))
便利なアクセスのためにそれを関数でラップすることができます(それでもライングラフィックオブジェクトにハンドルを渡す必要があります):
function applyColorLineStyleIndependently(h)
%# ...
end
