Add second y axis for a single data
37 次查看(过去 30 天)
显示 更早的评论
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 个评论
采纳的回答
Alberto Cuadra Lara
2022-10-27
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 个评论
Alberto Cuadra Lara
2022-10-27
编辑:Alberto Cuadra Lara
2022-10-27
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)
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Annotations 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!