How to plot a filled rectangle without edge?

38 次查看(过去 30 天)
'EdgeColor', 'None' makes the outline width to be zero?

采纳的回答

Toshia M
Toshia M 2024-10-4
Starting in R2024b, you can specify a name-value argument (EdgeColor="none") to remove the edge lines.
pcolor(rand(10,10),EdgeColor="none")
If you're running an earlier version of MATLAB, you can return the surface object as an output argument and set the EdgeColor property after you call pcolor.
figure
s = pcolor(rand(10,10));
s.EdgeColor = "none";

更多回答(2 个)

Image Analyst
Image Analyst 2015-9-28
Set the edge color to the same color value as the "FaceColor'

DGM
DGM 2024-10-5
Disregarding recent changes to options handling, this seems like it was always an adequately answerable question. It was just unclear what "filled rectangle" meant. I don't remember when dot notation started to be accepted here, but the same should have been practical using get()/set() in versions which might have been expected 10 years ago.
% use a rectangle object?
hr = rectangle('position',[1 1 15 10],'curvature',0.5);
hr.FaceColor = 'r';
hr.EdgeColor = 'none';
xlim([0 17])
ylim([0 12])
% use a patch object?
x = [1 1 16 16];
y = [1 11 11 1];
hp = patch(x,y,'r');
hp.EdgeColor = 'none';
xlim([0 17])
ylim([0 12])

类别

Help CenterFile Exchange 中查找有关 Graphics 的更多信息

Community Treasure Hunt

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

Start Hunting!

Translated by