draw multiple line segments, stairs(), plot() function?

조회 수: 10 (최근 30일)
Chen Chen
Chen Chen 2015년 10월 14일
댓글: Ian Hunter 2019년 7월 16일

assuming coordinates are known. x = [1,10], y = [1,10] Please help. Note: should be exactly the same as in the picture. (with dashes, circle points)

Thanks

채택된 답변

Walter Roberson
Walter Roberson 2015년 10월 14일
You can draw all of the solid or dashed segments at once by providing appropriate coordinates. Place NaN between the pairs:
x = [x1 x1 NaN x2 x2 NaN x3 x3];
y = [y1 y2 NaN y2 y3 NaN y3 y4];
plot(x, y, '-'); %no marker!
hold on
x = [0 x1 Nan x1 x2 Nan x2 x3];
y = [y1 y1 NaN y2 y2 Nan y3 y3];
plot(x, y, '--'); %no marker
and then draw all of the markers of each type
x = [0 x1 x2 x3];
y = [y1 y2 y3 y4];
plot(x, y, 'o'); %no line
x = [x1 x2 x3];
y = [y1 y2 y3];
plot(x, y, 'o', 'MakerFaceColor', 'k'); %no line, fill the marker
To create the axes as lines with arrows, create annotation arrows; see http://www.mathworks.com/help/matlab/ref/annotationarrow-properties.html
  댓글 수: 1
Ian Hunter
Ian Hunter 2019년 7월 16일
Very helpful. A few mistyped NaNs but otherwise solved my problem completely.

댓글을 달려면 로그인하십시오.

추가 답변 (0개)

카테고리

Help CenterFile Exchange에서 Line Plots에 대해 자세히 알아보기

Community Treasure Hunt

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

Start Hunting!

Translated by