use comma as decimal seperator
Afficher commentaires plus anciens
Hi,
i have a simple question and this is my last try, as i've been searching the web all morning:
Is there a way to use comma as decimal seperator instead of a period/dot in matlab?
Even maybe only in figures/axis format?
Thanks, any help is gratefully appreciated!
ps: i set the reagional settings in Windows/MacOS (using both) to German (--> Comma)
Réponse acceptée
Plus de réponses (6)
Daniel Shub
le 27 Sep 2011
0 votes
You might want to check out this link:
TAB
le 27 Sep 2011
0 votes
May be this can help you
Patrick
le 27 Sep 2011
0 votes
1 commentaire
Boris Povazay
le 17 Juil 2023
Well, the opposite is true ... poor old imperial system and stubborn USA. 🤔
Adam
le 1 Déc 2012
0 votes
Look there (just for function plots): http://frommyplayground.com/2012/12/decimal-comma-in-matlab-plots/
Daniel Gregorius
le 3 Mai 2018
Modifié(e) : Daniel Gregorius
le 3 Mai 2018
Hey. When dealing with this problem, this is what I came up with. It's an extract of a GUI. People kept entering values with comma (,) instead of a point (.) and then it didn't work so I thought of the following code, that seems to work. I am still not sure if I have thought of everything and this is probably alot more complicated than it should be. Hopefully this still helps. It basically converts input with comma as decimal seperator into a value seperated by decimal point.
x=str2num(get(handles.point,'String'));%get point - everything alright if the delimiter is a .
if size(x,2)>1 %it's not a . but a ,
strx=get(handles.point,'String'); %need to check for sign
splitstrx=strsplit(a1,','); %try to extract length of 2nd string, divide x(2) by 10^strlength
if strx(1)=='-'
x=x(1)-x(2)/10^strlength(splitstrx(1,2)); %it's negative, need to substract 2nd string
else
x=x(1)+x(2)/10^strlength(splitstrx(1,2)); %it's positive
end
end
2 commentaires
Stephen23
le 23 Mar 2019
x = str2double(strrep(get(handles.point,'String'),',','.'))
Or in a more general case:
x = str2double(strrep(str,',','.'))
Govind Narayan Sahu
le 19 Juin 2022
This works perfectly fine for me. Short and simple.
Thanks a lot.
Johannes Kalliauer
le 30 Nov 2020
writematrix(MyMatrix,filename,'Delimiter',';')
system(['exec sed -i "s/\./,/g" ',filename]);
Catégories
En savoir plus sur Text Files dans Centre d'aide et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!