Ensure that patch is displayed
이전 댓글 표시
I want to ensure that the patchs I plot are always displayed, not depending if they are to small compared to the current axes units.
The following minimal plot illustrates the issue:
axisLim=10000;
figure
hold on
plot(1:axisLim);
p1=patch([10 10 500 500],[0 axisLim axisLim 0],[1 1 1 1],…
'EdgeColor','none',wFaceColor','r')
p2=patch([9000 9000 9001 9001],[0 axisLim axisLim 0],[1 1 1 1],…
'FaceColor','r','EdgeColor','none')
The patch p1 will be visible, whereas the second won't. How can I make sure that all patchs are visible?
채택된 답변
추가 답변 (1개)
David Sanchez
2013년 8월 14일
Your second patch is visible if you zoom in the plot. Since you are drawing a patch so thin ( from 9000 to 9001 ) the resolution of the screen is not enough to make it visible. On the other hand, if you zoom in your plot in that region, you'll see your second patch right there. I would recommend a wider patch of at least 10 units:
axisLim=10000;
figure
hold on
plot(1:axisLim);
p1=patch([10 10 500 500],[0 axisLim axisLim 0],[1 1 1 1],...
'EdgeColor','none','FaceColor','r')
p2=patch([9000 9000 9010 9010],[0 axisLim axisLim 0],[1 1 1 1],...
'FaceColor','b','EdgeColor','none')
hold off
댓글 수: 3
David Sanchez
2013년 8월 14일
To zoom in, use the magnifying glass with a + sign on it, from your plot window.
Walter Roberson
2013년 8월 14일
You can also zoom by setting xlim and ylim after you plot. This is how the magnifier tool works internally, other than the tool doing some house-keeping to keep track of the previous zooms so that you can zoom out to what you had before.
Werner
2013년 8월 14일
카테고리
도움말 센터 및 File Exchange에서 Polygons에 대해 자세히 알아보기
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!