how to fill between 2 graphs
2 次查看(过去 30 天)
显示 更早的评论
Hi eveybody
I could not fill the gap betwween 2 curves. it is shown in below figure.
can anyone help me?
thanks
The code I used is:
plot(KI1,KP1);
xlabel('K_I');
ylabel('K_P');
grid on
hold on
x2=zeros(1,150)
y=linspace(-20,40,numel(x2))
plot(x2,y,'linewidth',2)
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/283471/image.jpeg)
6 个评论
采纳的回答
Les Beckham
2020-4-11
What do you mean by "fill the gap"? Do you want to connect the start and end points so that this becomes a closed curve? If so, this should do it:
plot([KI1(:); KI1(1)], [KP1(:); KP1(1)]);
xlabel('K_I');
ylabel('K_P');
grid on
7 个评论
更多回答(1 个)
darova
2020-4-13
Here is my shot
y = 0:0.1:pi;
x1 = -sin(y);
x2 = y*0-0.3;
[xc,yc] = polyxpoly(x1,y,x2,y);
xx = [xc(1) x1(x1<x2) xc(end)];
yy = [yc(1) y(x1<x2) yc(end)];
plot(x1,y,x2,y)
patch(xx,yy,'r')
line(xc,yc,'marker','o')
success?
![](https://www.mathworks.com/matlabcentral/answers/uploaded_files/284104/image.png)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Surface and Mesh Plots 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!