Is it possible to produce a plot in MATLAB with the axes scaled based upon the natural logarithm?

9 visualizzazioni (ultimi 30 giorni)
I know it is possible to scale axes based upon a base 10 log scale using the SEIMLOGX and SEMILOGY functions, but there does not seem to be any way to scale axes based upon a natural logarithm scale.

Risposta accettata

MathWorks Support Team
MathWorks Support Team il 5 Ago 2009
The ability to scale axes based upon a natural logarithm scale is not available in MATLAB.
To work around this issue, plot the natural logarithm of the data on a linearly-scaled figure.
For example, try the following commands:
x = linspace(0, 100);
y = exp(x + 1);
plot(x, log(y))

Più risposte (1)

Voss
Voss il 21 Mar 2024
x = linspace(0, 100);
y = exp(x + 1);
semilogy(x,y)
yl = ylim();
n = ceil(log(yl(1))):10:floor(log(yl(2)));
yticks(exp(n))
yticklabels("e^{"+n+"}")
set(gca(),'YMinorTick','off')

Categorie

Scopri di più su Labels and Styling in Help Center e File Exchange

Prodotti

Community Treasure Hunt

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

Start Hunting!

Translated by