change the number of digits after decimal point

205 views (last 30 days)
Hi everybody
how can I change the number of digits after decimal point? I have a matrix of float numbers i want to transform each number in this matrix from this form x.xxxxxxxxxxxxxxx to this form x.xxxx
thanks

Accepted Answer

Mahdi
Mahdi on 30 May 2014
Edited: Mahdi on 30 May 2014
You can use the sprintf or the format option. In your case, you can just type:
format short
into the command window.
  3 Comments
Mahdi
Mahdi on 30 May 2014
Edited: Mahdi on 30 May 2014
Try putting format short into your script? Do you mind attaching your code? It should work for your purposes.
I strongly do not recommend doing it this way, but as a last resort, you can change your string to a number using str2num.
jan
jan on 30 May 2014
Thanks mehdi even it isn't a direct way but it gives what i need thanks a lot

Sign in to comment.

More Answers (2)

Image Analyst
Image Analyst on 30 May 2014
(I should add this to the FAQ.)
  4 Comments
jan
jan on 30 May 2014
Edited: jan on 30 May 2014
Hi I'm looking for b but sprintf is to transform the data to string which isn't my interest fprintf for displaying and i used format short in the command window but nothing is change. I need to transform all the values in the matrix with only 4 digits numbers and not 15 because i will do a treatement on it so it isn't a problem of displaying
Image Analyst
Image Analyst on 30 May 2014
Edited: Image Analyst on 29 Nov 2014
You said you want (b) but then you say that you don't want to use sprintf() or format() or to use a string at all. Your last sentence indicates that you want it to stay a number not a string but that is option (a) and is the answer I gave you at the very start. Sorry but I still am not sure what you want. You're either changing the number (by chopping off digits) or you're not, which is it?

Sign in to comment.


rahul bathini
rahul bathini on 26 Jun 2015
I've made a simulation on BPSK modulation and semilogy plotted the SNR vs. BER. The plot is geometrically the same to the actual plot but deviates from BER = 0.00001.I think this is because matlab doesn't consider values below 4 decimal place while plotting , to what extent could this be the reason if not what could the reason be.plz someone help me

Categories

Find more on Data Type Conversion in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!