fill legend rectangles with color

6 views (last 30 days)
sani
sani on 27 May 2020
Commented: sani on 28 May 2020
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
Walter Roberson on 27 May 2020
What kind of graphic object are those for? Were you using rectangle() ? Or bar() ?
sani
sani on 27 May 2020
histograms (I'm ploting multiple signals from a detector)

Sign in to comment.

Accepted Answer

darova
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
darova on 28 May 2020
Maybe you have newer version and there some some difference in handlers
Try to experiment with these
sani
sani on 28 May 2020
great,will do!
thanks again!

Sign in to comment.

More Answers (0)

Community Treasure Hunt

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

Start Hunting!