I have following data set.
x y
0.01 1.88
0.05 1.92
0.10 1.60
0.15 1.23
0.20 1.00
0.25 1.00
0.95 1.00
0.99 1.00
I want to create a plot like this:
Untitled.png
I also want to add marker points as well to the graph. thank you.

 채택된 답변

KSSV
KSSV 2019년 6월 6일

1 개 추천

A = [0.01 1.88
0.05 1.92
0.10 1.60
0.15 1.23
0.20 1.00
0.25 1.00
0.95 1.00
0.99 1.00 ] ;
x = A(:,1) ; y = A(:,2) ;
x1 = [x(1:5); x(1)] ;
y1 = [y(1:5); 1] ;
x2 = [x ; 1 ; min(x) ; x(1) ] ;
y2 = [y ; 2 ; 2 ;y(1)] ;
patch(x1,y1,'r')
hold on
patch(x2,y2,'b')

댓글 수: 4

Milan Kumar
Milan Kumar 2019년 6월 6일
편집: Milan Kumar 2019년 6월 6일
Add square marker for the points?
KSSV
KSSV 2019년 6월 6일
A = [0.01 1.88
0.05 1.92
0.10 1.60
0.15 1.23
0.20 1.00
0.25 1.00
0.95 1.00
0.99 1.00 ] ;
x = A(:,1) ; y = A(:,2) ;
x1 = [x(1:5); x(1)] ;
y1 = [y(1:5); 1] ;
xi = linspace(min(x),max(x)) ;
yi = linspace(min(y),max(y)) ;
[X,Y] = meshgrid(xi,yi) ;
idx = inpolygon(X,Y,x1,y1) ;
figure
hold on
plot(X(idx),Y(idx),'+r')
plot(X(~idx),Y(~idx),'xb')
Milan Kumar
Milan Kumar 2019년 6월 6일
Thank you for all the help. One last thing if for the follwoing data set:
A = [0.01 1.88
0.05 1.92
0.082 1.88
0.10 1.60
0.15 1.23
0.20 1.00
0.25 1.00
0.95 1.00
0.99 1.00 ]
The graph I want is:
Untitled.png
Please help in understanding the logic of creating area.
KSSV
KSSV 2019년 6월 6일
Logic is simple......you need to define the polygons...provide the polygon vertices.

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

추가 답변 (0개)

카테고리

도움말 센터File Exchange에서 2-D and 3-D Plots에 대해 자세히 알아보기

태그

질문:

2019년 6월 6일

댓글:

2019년 6월 6일

Community Treasure Hunt

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

Start Hunting!

Translated by