Scientific notation values to the y axis label based on original data
8 Ansichten (letzte 30 Tage)
Ältere Kommentare anzeigen
Reid
am 23 Mai 2014
Kommentiert: Star Strider
am 24 Mai 2014
Hey! I would like to automatically have the y-axis label updated based on the input values for the variable y. In this case I would like the line "-5" in the y-axis label replaced by "10^-5" (with the -5 shown as an exponent).
Thanks in advance for any help!
if true
% code
x=[1:3];
y=[.00002 .00004 .00006];
figure;
plot(x,y);
ylabexp=floor(log10(y(1)));
ylab = {'\uparrow';'\epsilon /';ylabexp;'M^{-1}'};
yh = ylabel(ylab);
set(yh,'rot',0)
ylabh2 = get(gca,'YLabel');
set(ylabh2,'Position',get(ylabh2,'Position') - [.1 0 0])
end
4 Kommentare
Star Strider
am 24 Mai 2014
Bearbeitet: Star Strider
am 24 Mai 2014
I tried to run your code but couldn’t.
- PLEASE format your code — use the ‘[{}Code]’ button
- what is ‘yval’?
- Y not use semilogy?
Akzeptierte Antwort
Star Strider
am 24 Mai 2014
Change your ylabexp line to:
ylabexp=sprintf('10^{%d}',floor(log10(y(1))));
If I understand your question correctly, that should do what you want.
0 Kommentare
Weitere Antworten (1)
Siehe auch
Kategorien
Mehr zu Axis Labels finden Sie in Help Center und File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!