Add second y axis for a single data
38 views (last 30 days)
Show older comments
Gunay Gazaloglu
on 27 Oct 2022
Commented: Gunay Gazaloglu
on 27 Oct 2022
I have a problem adding a second y-axis; all solutions point out that I need another data set to have a second y-axis. However, I want to have two y-axis for a single point while the x-axis is the same.
For instance;
point=(3,6), and I want to show that on the right y-axis side, the point (3,6) has a 0.5 value, so the general notation could be as (x,y1,y2)=(3,6,0.5)
first data
For example;
x=[3,5,6,8,11]
y1=[6,7,9,14,17]
I want right y axis to be
y2=[0.5,2,5,7,11]
.
3 Comments
Accepted Answer
Alberto Cuadra Lara
on 27 Oct 2022
Hello Gunay,
Best,
Alberto
x = [3,5,6,8,11];
y1 = [6,7,9,14,17];
y2 = [0.5,2,5,7,11];
hold on; axis tight
plot(x, y1);
yyaxis right;
plot(x, y2);
3 Comments
Alberto Cuadra Lara
on 27 Oct 2022
Edited: Alberto Cuadra Lara
on 27 Oct 2022
Hello Gunay,
If you want a line with data that is not proportional to each other, i.e., different scales, you will need to set a piecewise scale distribution. This can be done, for example changing yticks values and yticklabels.
% Data
x = [3,5,6,8,11];
y1 = [6,7,9,14,17];
y2 = [0.5,2,5,7,11];
% Plot configuration
colororder({'k','k'})
hold on; axis tight
% Plot (left)
plot(x, y1);
% Plot (right)
yyaxis right;
plot(x, y1);
% Change yticks (right)
set(gca, 'YTick', y1, 'YTickLabel', y2)
More Answers (0)
See Also
Categories
Find more on Annotations 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!