How to display units (micro, mili,mega..) automatically?

146 views (last 30 days)
I want to show the values with units on the plot
For example, instead of 5.43e-006 sec , I want it to be seen 5.43 μsec.
Or instead of 0.00065 sec, 0.65 msec. Do you have any idea how can I do this?

Answers (2)

Wayne King
Wayne King on 24 Sep 2012
Why don't you just scale the elements by the appropriate factor?
t = 0:1e-6:0.001;
x = cos(2*pi*1e5*t);
plot(t.*1e6,x)
xlabel('\musec')

Azzi Abdelmalek
Azzi Abdelmalek on 24 Sep 2012
% look at this example
close
t0=10^(-8);
t=linspace(t0,t0*10,100)
y=sin(t/t0)
t1=t;tm=max(t1)
unit='s'
if tm<10^(-6)
t1=t*10^6
unit='t(\mus)'
elseif tm>10^(-6) & tm <10^-(3)
t1=t*10^3
unit='t(ms)'
end
plot(t1,y)
set(gca,'xtick',round(linspace(min(t1),max(t1),10)*100)/100)
xlabel(unit)
  1 Comment
dipak
dipak on 11 Mar 2022
https://www.mathworks.com/matlabcentral/fileexchange/33174-number-to-scientific-prefix

Sign in to comment.

Categories

Find more on Sudoku in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!