How to add a second x-axis on top in plot?
66 views (last 30 days)
Show older comments
I think something similar is asked in the forum before and there is a documentation on how to add second a y-axis. But I am not exactly getting what I want. It would be great if someone can help.
I want something very simple. I have x1, x2, and corresponding y. I want to plot y and show x2 at the bottom axis and x1 at the top axis. Please remember, x1 and x2 are related, so x1 = 14 will refer to x2 = 399 and they will plot y =1..and so on.
x1 = [14 16 18 20 22];
x2 = [399 520 675 830 1001];
y =[1 2 3 4 5];
plot(x2,y)
0 Comments
Answers (2)
John R
on 5 Nov 2021
Edited: John R
on 8 Dec 2021
x1 = [14 16 18 20 22];
x2 = [399 520 675 830 1001];
y =[1 2 3 4 5];
t=tiledlayout(1,1);
ax1=axes(t);
set(ax1,'XLim',[min(x1) max(x1)]);
plot(ax1,x1,y)
ax1.XTick=x1;
ax1.YTick=[];
ax1.XTickLabel=x1;
ax2=axes(t);
set(ax2,'XLim',[min(x1) max(x1)]);
plot(ax2,x1,y)
ax2.XAxisLocation='top';
ax2.XTick=x1;
ax2.XTickLabel=x2;
0 Comments
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!