fill legend rectangles with color
7 views (last 30 days)
Show older comments
hello,
I'd like to fill the legend rectangles in color (not just the frame as in the picture), how it can be done?
thanks!
2 Comments
Walter Roberson
on 27 May 2020
What kind of graphic object are those for? Were you using rectangle() ? Or bar() ?
Accepted Answer
darova
on 27 May 2020
Try this example
surf(peaks,'facecolor','none') % plot peaks
surface(membrane,'facecolor','none') % plot membrane
h = legend('surf','memb'); % show legend
h1 = get(h,'children'); % get handle of each object in legend
for i = 1:length(h1) % loop through each object
if strcmp(get(h1(i),'type'),'patch')% if an object is a patch
cc = get(h1(i),'edgecolor'); % get edgecolor
set(h1(i),'facecolor',cc) % set facecolor
end
end
3 Comments
darova
on 28 May 2020
Maybe you have newer version and there some some difference in handlers
Try to experiment with these
More Answers (0)
See Also
Categories
Find more on Legend 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!