Hi MATLAB Community,
How would I change the line type for my plot, so I have a '-r' and '--r' as well as '-b' and '--b'?
figure;
p = plot(x, y);
set(p, {'color'}, {'r'; 'r'; 'b'; 'b'});

 採用された回答

Bjorn Gustavsson
Bjorn Gustavsson 2021 年 4 月 9 日

0 投票

Maybe you'll have to accept looping a little:
lstl = {'-','--'};
for i1 = 1:4,
set(p(i1),'linestyle',lstl{rem(i1,2)+1})
end
HTH

1 件のコメント

Kenneth Bisgaard Cristensen
Kenneth Bisgaard Cristensen 2021 年 4 月 9 日
Thanks, no the best at looping yet, but it worked great.

サインインしてコメントする。

その他の回答 (1 件)

VBBV
VBBV 2021 年 4 月 9 日
編集済み: VBBV 2021 年 4 月 9 日

2 投票

%f true
figure;
p = plot(x, y);
set(p, {'LineStyle'},{'-';'--';'-';'--'},{'color'}, {'r'; 'r'; 'b'; 'b'});

1 件のコメント

Bjorn Gustavsson
Bjorn Gustavsson 2021 年 4 月 9 日
Neat, but:
Mathworks, this is ugly!
When I tried this:
set(p, 'LineStyle',{'-';'--';'-';'--'},{'color'}, {'r'; 'r'; 'b'; 'b'});
I got and angry error-message:
Error using matlab.graphics.chart.primitive.Line/set
Error setting property 'LineStyle' of class 'Line':
Invalid enum value. Use one of these values: '-' | '--' | ':' | '-.' | 'none'.
...but when wrapping the property in a cell-array everything works fine. That is ugly.

サインインしてコメントする。

カテゴリ

ヘルプ センター および File Exchange で Graphics Object Properties についてさらに検索

製品

リリース

R2020a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by