HELP DIFFERENT LINESTYLE ON THE SAME CURVE

4 次查看(过去 30 天)
Hi everyone, I am a new entry in the group. I have a problem with a matlab plot.
I have two vectors x and y, and plot (x, y), at this point I get a curve. I would like this curve to be dashed for values of x <50 and continuous for values x> 50. how can I do?
Thank you very much for helping
  3 个评论
Matt J
Matt J 2019-4-23
编辑:Matt J 2019-4-23
When I plot this data, however, I see something weird-looking that does not look like a function. Perhaps it is not the correct data? Or maybe x and y are interchanged?
roberta perna
roberta perna 2019-4-23
编辑:roberta perna 2019-4-23
the plot is correct. I would like that x> 50 or 60 ( continuous) and x< 50 or 60 (dashed)

请先登录,再进行评论。

采纳的回答

Matt J
Matt J 2019-4-23
编辑:Matt J 2019-4-23
Just split x,y into two subsets and plot each subset as a separate line:
idx=x<50;
x1=x(idx); y1=y(idx);
x2=x(~idx); y2=y(~idx);
H=plot(x1,y1,'--',x2,y2,'-');
  16 个评论
roberta perna
roberta perna 2019-4-23
编辑:roberta perna 2019-4-23
this second graph has the same y as the first one. at this point I would like continuous line in the second plot for 0.6471<y<0.797 ( extremes of the continuous line found in the first plot)
Matt J
Matt J 2019-4-23
I'm not sure I understand, but you can trace a line over any subset of the data using the same kind of technique,
subset=(y<0.797)&(y>0.6471);
line(x(subset), y(subset),'LineStyle','-','LineWidth',3,'Color','red')

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 MATLAB 的更多信息

产品

Community Treasure Hunt

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

Start Hunting!

Translated by