change the number of digits after decimal point

203 vues (au cours des 30 derniers jours)
jan
jan le 30 Mai 2014
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

Réponse acceptée

Mahdi
Mahdi le 30 Mai 2014
Modifié(e) : Mahdi le 30 Mai 2014
You can use the sprintf or the format option. In your case, you can just type:
format short
into the command window.
  3 commentaires
Mahdi
Mahdi le 30 Mai 2014
Modifié(e) : Mahdi le 30 Mai 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 le 30 Mai 2014
Thanks mehdi even it isn't a direct way but it gives what i need thanks a lot

Connectez-vous pour commenter.

Plus de réponses (2)

Image Analyst
Image Analyst le 30 Mai 2014
(I should add this to the FAQ.)
  4 commentaires
jan
jan le 30 Mai 2014
Modifié(e) : jan le 30 Mai 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 le 30 Mai 2014
Modifié(e) : Image Analyst le 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?

Connectez-vous pour commenter.


rahul bathini
rahul bathini le 26 Juin 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

Catégories

En savoir plus sur Data Type Conversion dans Help Center et File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by