Code covered by the BSD License  

Highlights from
multiplotyyy

5.0
5.0 | 2 ratings Rate this file 70 Downloads (last 30 days) File Size: 1.47 KB File ID: #39595 Version: 1.2
image thumbnail

multiplotyyy

by

 

08 Jan 2013 (Updated )

MULTIPLOTYYY allows the user to plot multiple lines on three sets of y-axes.

| Watch this File

File Information
Description

MULTIPLOTYYY plots using three sets of y-axes values. Additionally, multiple lines can be plotted against each y-axis. Therefore, the inputs to the function must be grouped into cell arrays.
Here is an example call to the function:
x1 = (0:0.01:1)';
x2 = (0:0.1:1)';
x3 = (0:0.05:1)';
y1 = x1;
y2 = x2.^2;
y3 = x3.^3;
y4 = sin(x1);
y5 = fliplr(2*x1.^2);
y6 = 7*cos(x1);
y7 = 7*log(x1+1.2);
ylabels{1}='First y-label';
ylabels{2}='Second y-label';
ylabels{3}='Third y-label';
[ax,hlines] = multiplotyyy({x1,y1,x2,y2,x3,y3,x1,y4},{x1,y5},{x1,[y6,y7]},ylabels);legend(cat(1,hlines{:}),'a','b','c','d','e','f','g','location','w')

Acknowledgements

Plotyyy inspired this file.

Required Products MATLAB
MATLAB release MATLAB 8.4 (R2014b)
MATLAB Search Path
/
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (5)
23 Jun 2015 Laura Proctor

Andreas, all the lines are saved in the output, hlines. You can change the style using these. Or, you can change it in the code. If you let me know what you're looking for, I can help out.

To work with the legend, you can use the following modifications after you call the code that will align the axes with a legend on the left hand side. Please feel free to contact me directly, I'd be happy to help!

>> leg = legend(cat(1,hlines{:}),'a','b','c','d','e','f','g','location','w');
>> leg.Location = 'westoutside';
>> ax(2).Position = ax(1).Position;
>> ax(3).Position = ax(1).Position;
>> offset = 0.7/5.5;
>> ax(3).Position(3) = ax(3).Position(3) + offset;
>> ax(3).XLim = [ ax(1).XLim(1) ax(1).XLim(2)*(1 + 1/(ax(1).Position(3)) * offset)];

Comment only
23 Jun 2015 Andreas Kaineder

Great tool!! Is there a way to change the linestyle?

The only problem is, that the 2nd & 3rd axis are messed up when I put the legend outside of the plot. Can anybody help me with this? When I plot multiple lines it's confusing with the legend inside the plot. Thanks!

19 Jan 2015 Agnieszka

when I run the example it shows me that: Undefined function 'multiplotyyy' for input arguments of type 'cell'
what is it wrong then? thanks!

Comment only
11 Apr 2013 Giacomo Alessandroni  
09 Jan 2013 R

R (view profile)

Couple of mistakes in the example, but otherwise works as advertised, thanks!

Comment only
Updates
10 Jan 2013 1.1

I fixed the mistakes in the original example call.

02 Jul 2015 1.2

modified calls in accordance with updated graphics

Contact us