Fill light gray color between two horizontal lines in a plot?
古いコメントを表示
I want to fill light gray color between two horizontal lines such that I can plot the horizontal lines as dashed dotted ? Please help me regarding this issue. I am writing below the code
x=[1:10];
y=[1:10];
figure(1);clf;
plot(x,y,'b')
hold on
plot([1,10],2*[1,1],'--.k')
hold on
plot([1,10],4*[1,1],'--.k')
2 件のコメント
Levente Gellért
2024 年 2 月 14 日
Dear Community members! How can one solve the same problem in 2017a?
Thanks
lg
Star Strider
2024 年 2 月 14 日
My code should work equally well in R2017a.
採用された回答
その他の回答 (2 件)
x=[1:10];
y=[1:10];
figure(1);clf;
plot(x,y,'b')
hold on
plot([1,10],2*[1,1],'--.k')
hold on
plot([1,10],4*[1,1],'--.k')
x = [1 10 10 1];
y = [2 2 4 4];
patch(x,y,[.5 .5 .5])
1 件のコメント
Using patch as @Arif Hoq suggested is best, but you may also want to set the FaceAlpha and EdgeColor like this:
x=[1:10];
y=[1:10];
figure(1);clf;
plot(x,y,'b')
hold on
plot([1,10],2*[1,1],'--.k')
hold on
plot([1,10],4*[1,1],'--.k')
x = [1 10 10 1];
y = [2 2 4 4];
patch(x,y,'k','FaceAlpha',0.5,'EdgeColor','none')
xlim([1 10])
Sarvesh Kale
2023 年 2 月 7 日
Hi ,
You can add the following extra line to your code
rectangle("Position",[1 2 10 2],"FaceColor",[150/255 150/255 150/255],"LineStyle","none");
This will shade the required portion with gray color, However I was not able to toggle its visibility so that the underlying slanted straight line is also visible.
カテゴリ
ヘルプ センター および File Exchange で Labels and Annotations についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



