Color legend for a single graphics object

3 views (last 30 days)
Context: I'm working with a M-by-3 that I've categorized into 4 different groups. As part of the visualization of this data, I'm creating a MechE-style 4 view drawing. The 4 groups are defined by 4 logical masks of length M.
Problem: I would like to have annotation, legend, or similar to explain the color-coding I've applied to 3 of the views in this figure (a scatter, a scatter3, and a third yet-be-be-determined object). So far, the only solutions to this are inelegant at best. My own solution (below) isn't much better.
%minimum code snippet
colormap(AxHandIso,[[1 0 1 0.9290]',[1 1 0 0.6940]',[0 0 0 0.1250]']);
colorbar(AxHandIso,'Ticks',[0.125 0.375 0.625 0.875],'TickLabels',{'What Yellow Means','What Green Means',...
'What Red Means','What Orange Means'});
ColourLegend = legend(AxHandIso,'EnoughTextToPreventClippingColorBar'); ColourLegend.Visible = 'off';
Question: Is there a better/more elegant way to create an annotation which occupies the same space as a legend in the WestOutside Position, automatically resizes the axes object(s) in a figure to accomodate itself, work within a tiledlayout, and does not involve creating superfluous graphics objects?
Side Question: Why doesn't lcolorbar accept a target argument?

Answers (0)

Categories

Find more on Discrete Data Plots in Help Center and File Exchange

Products


Release

R2019b

Community Treasure Hunt

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

Start Hunting!