How to plott multiple graphs with two Y-axes?
1 view (last 30 days)
Show older comments
Hi,
Please suggest me how to write the code to plott multiple graphs with two Y-axes.
I have data sets like this...
X-axis data X1=[.....]; X2=[.....]; X3=[....];
First Y axis data A1=[.....]; A2=[.....]; A3=[.....];
second Y axis data B1=[.....]; B2=[.....]; B3=[.....];
This data produce totally six graphs, theree with Y axis one and three with Y axis two, please check the following image.
I am also attaching the excel file, please have a look.
Thanks
0 Comments
Answers (3)
Sebastian Castro
on 13 Aug 2015
Edited: Sebastian Castro
on 13 Aug 2015
There is a "plotyy" function which lets you have two separate y-axes on the left and right sides:
Since you have 6 plots (3 on each axis, you should be able to concatenate them into columns. For example:
x = (1:10)';
y1 = rand(size(x));
y2 = rand(size(x));
y3 = rand(size(x));
y4 = 100*randn(size(x));
y5 = 100*randn(size(x));
y6 = 100*randn(size(x));
plotyy(x,[y1 y2 y3],x,[y4 y5 y6]);
- Sebastian
0 Comments
R7 DR
on 13 Aug 2015
2 Comments
Sebastian Castro
on 13 Aug 2015
Does your data have different x-coordinates too? The commands I shared with you assume that all of them share the same x data, and therefore also have the same number of elements in the y-axis.
You could use functions like "interp1" to interpolate the data such that they all use the same x vector and can be concatenated and plotted with plotyy. Otherwise, it may be a more involved solution...
- Sebastian
See Also
Categories
Find more on Axis Labels in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!