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

8 visualizaciones (últimos 30 días)
Sammy
Sammy el 9 de Jul. de 2021
Comentada: Sammy el 15 de Jul. de 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')

Respuesta aceptada

Sam
Sam el 9 de Jul. de 2021
Editada: Sam el 9 de Jul. de 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 comentario
Sammy
Sammy el 15 de Jul. de 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. (:

Iniciar sesión para comentar.

Más respuestas (0)

Productos


Versión

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by