File Exchange

image thumbnail

Legend Scatter

version 1.0.5.0 (8.93 KB) by Matteo Bagagli
LEGENDSCATTER: workaround for R2016a and later for scatter plot legend.

1 Download

Updated 02 Sep 2017

View License

This function aims to simplify the creation of a legend for scatter plots.
The function will plot a legend on current axis with the right
markersize proportion.
NB. From version 1.0.5 is added the compatibility with previous MATLAB
version.
-------------------------------------------- INPUTS
- TextCell: a cell array containing the legend-entry text.
WARNING: THE FIRST CELL IS THE TITLE !!!
- SizeDim: the ''MarkerSize'' dimension for each entry.
WARNING: length(SizeDim)==length(TextCell)-1 !!!

- Factor: normaling factor for enlarge the marker size in
a linear way. (MarkerSize*sqrt(Factor)

- LinSpec: specify the marker-string.

-------------------------------------------- EXAMPLE
Factor=1.5;
A=[1,1,1;
2,2,2;
3,3,3;
4,4,4;
5,5,5;
6,6,6;
7,7,7;
8,8,8;
9,9,9;
10,10,10];

sh=scatter(A(:,1),A(:,2),(A(:,3).^2)*Factor,'ok');
%scattersize==MarkerSize*sqrt(Factor)pt)
leg=LEGENDSCATTER({'SIZE','1','2','3','4','5', ...
'6','7','8','9','10'},[1:1:10],Factor,'ok');
leg.Location='NorthWest'; axis([0,11,0,11])

-------------------------------------------- INFO
VERSION:1.0.5
AUTHOR: Matteo Bagagli - ETH-Zurich // Oct. 2016
MAIL: matteo.bagagli@erdw.ethz.ch

Comments and Ratings (2)

Do you think there could be a way to use your function with polarscatter?

I would like to do exactly the same thing as your example but with polarscatter

Thanks

Jérome

Updates

1.0.5.0

Improved help

1.0.5.0

Added compatibility with previous MATLAB releases.
Improved help.

MATLAB Release Compatibility
Created with R2016a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Acknowledgements

Inspired: velest2mat

Discover Live Editor

Create scripts with code, output, and formatted text in a single executable document.


Learn About Live Editor