How to plot and label a secondary x-axis in log?

7 vues (au cours des 30 derniers jours)
Sammy
Sammy le 9 Juil 2021
Commenté : Sammy le 15 Juil 2021
I tried to make a secondary x-axis but instead of 10^-3 to 10^1 like the primary x-axis (frequency), I wanted it to be 10^3 to 10^-1 since it should be in days. I tried plotting it using plotxx but I have difficulty getting log values. It should look like this.
figure
ax1=axes;
loglog(freq*24,PSDm,-1./freq/24,NaN*freq)
axis tight
ylim([1e1 1e11])
hold on
ax2=axes;
set(ax2,'Color','none')
set(ax2,'Ytick',[])
set(ax2,'XAxisLocation','top')
% xt = get(ax1,'XTick');
% set(ax2,'XTickLabel',xt)
xlabel(ax1,'frequency [cpd]')
xlabel(ax2,'period [days]')
ylabel(ax1,'kinetic energy density [m^2.s^{-2}/cpd]')
title('JOLO Residual Tides')

Réponse acceptée

Sam
Sam le 9 Juil 2021
Modifié(e) : Sam le 9 Juil 2021
A better way to go about this would be to have two different plots, and in one of them move the x - axis location to the top and do not label the y-axis. Refer to this official documentation provided by Mathworks for the same here
  1 commentaire
Sammy
Sammy le 15 Juil 2021
Thanks! The plot above is made using plotxx( ) but without the log function. So you have to log the variables first. But thank you still, Sam. (:

Connectez-vous pour commenter.

Plus de réponses (0)

Produits


Version

R2021a

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by