I cannot find how to make 1234567 to 1 234 567. Found only:
set decimalsign locale "fr_FR.utf8"
set format y "%'.0f"
But it shows nonsense:
result
set decimalsign locale "fr_FR.utf8"
set format y "%'.0f"
I cannot find how to make 1234567 to 1 234 567. Found only:
set decimalsign locale "fr_FR.utf8"
set format y "%'.0f"
But it shows nonsense:
result
set decimalsign locale "fr_FR.utf8"
set format y "%'.0f"
The gnuplot commands you show should work, and in fact they do work correctly on my setup. I suspect that the problem is not gnuplot per se, but the output device you are viewing the plot on. The garbage-looking sequence â Ż
is likely a failure to handle the UTF-8 byte sequence representing unicode U+2006 "SIX-PER-EM SPACE" a.k.a "THIN SPACE". So my guess is that your gnuplot script is correct but something else in your environment needs to be set to UTF-8.
It might help to tell gnuplot set encoding utf8
, but from the output you show I think gnuplot is already producing utf8 that isn't handled correctly afterwards.
gnuplot> set decimalsign locale "fr_FR.utf8"
decimal_sign in locale is ,
gnuplot> set format y "%'.0f"
gnuplot> set xrange [1.e8:1.e9]
gnuplot> set tics scale 0
gnuplot> set term dumb
gnuplot> plot x
1 100 000 000 +-----------------------------------------------------------+
| |
1 000 000 000 | x ********|
| **** |
900 000 000 | **** |
| ***** |
800 000 000 | **** |
| **** |
700 000 000 | *** |
| **** |
600 000 000 | **** |
| ***** |
500 000 000 | **** |
| **** |
400 000 000 | *** |
| **** |
300 000 000 | **** |
| ***** |
200 000 000 | **** |
| **** |
100 000 000 +--8------8-----8------8------8-----8------8------8-----8---+ 9
1×10 2×10 3×10 4×10 5×10 6×10 7×10 8×10 9×10 1×10