Clear Filters
Clear Filters

How to plot a filled rectangle without edge?

37 views (last 30 days)
'EdgeColor', 'None' makes the outline width to be zero?

Accepted Answer

Toshia M
Toshia M on 4 Oct 2024
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";

More Answers (2)

Image Analyst
Image Analyst on 28 Sep 2015
Set the edge color to the same color value as the "FaceColor'

DGM
DGM on 5 Oct 2024
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])

Categories

Find more on Graphics in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!