Code covered by the BSD License  

Highlights from
Multiple Plot

Be the first to rate this file! 23 Downloads (last 30 days) File Size: 3.31 KB File ID: #20750
image thumbnail

Multiple Plot

by

 

17 Jul 2008 (Updated )

Enables you to easily plot several data with common xdata

| Watch this File

File Information
Description

multiplot - 2D-line plots on several axes with common x-axis
multiplot(XDATA,YDATA,'PropertyName',PropertyValue,...) plots the data
stored in the cell arrays XDATA and YDATA in several subplots with a common
x-axis. multiplot also links all generated axes in order to synchronize the
zoom along the x-axis. See below for a description of each argument.

LINES = multiplot(XDATA,YDATA,'PropertyName',PropertyValue,...) performs the
actions as above and returns the handles of all the plotted lines in a cell
array which has the same length as XDATA.

[LINES,AXES] = multiplot(XDATA,YDATA,'PropertyName',PropertyValue,...)
performs the actions as the first syntax and returns the handles of all the
plotted lines in a cell array which has the same length as XDATA and all the
axes handles in a double array.

Required inputs and descriptions:
XData - Cell array. Contains the X data of the lines. Each cell
content is similar to to the X variable when you execute plot(X,Y).

YData - Cell array. Contains the Y data of the lines. Each cell
content is similar to to the Y variable when you execute plot(X,Y).
Note that YData must be the same length as XData.

Property/Value pairs and descriptions:

LineSpec - Cell array or char array. If LineSpec is a char array then it
specifies this line spec will be used for all lines. If LineSpec is a
cell array it must contain only char arrays and each cell will specify
the line spec of the corresponding cell in XData and YData.
Note that if LineSpec cell array has less elements than XData and YData
then line spec will be periodically reused.

XLabel - Char array. x-axis label displayed below the bottom axes.

YLabel - Cell array. Labels that will be displayed next to the y-axis
for each data.
Note that YLabel must be the same length as XData and YData.

Title - Char array. Label deisplayed on top of all axes.

XLim - Two elements double array. The lower and upper limits for the
common x-axis of all axes.

Example:
xdata = {1:20, linspace(-10,25,100), linspace(0,30,25)};
ydata = {2000 * rand(1,20) , rand(1,100) , 500 * rand(1,25)};
ylabel = {'1st Data','2nd Data','3rd Data'};
linespec = {'b-*','r:+','g'};
multiplot(xdata, ydata, 'YLabel', ylabel, ...
'LineSpec', linespec, 'Title', 'Graph Title', 'XLabel', 'time');

Acknowledgements

Multiplot inspired this file.

MATLAB release MATLAB 7.5 (R2007b)
Tags for This File   Please login to tag files.
Please login to add a comment or rating.
Comments and Ratings (1)
26 Jul 2008 liudaohai liudaohai

Example:
xdata = {1:20, linspace(-10,25,100), linspace(0,30,25)};
ydata = {2000 * rand(1,20) , rand(1,100) , 500 * rand(1,25)};
ylabel = {'1st Data','2nd Data','3rd Data'};
linespec = {'b-*','r:+','g'};
multiplot(xdata, ydata, 'YLabel', ylabel, ...
'LineSpec', linespec, 'Title', 'Graph Title', 'XLabel', 'time');
??? Function name must be a string.

Error in ==> multiplot at 113
xLim = [min(cellfun(@min,p.Results.XData)) , max(cellfun(@max,p.Results.XData))];

Contact us