我通过 Perl 脚本 (RRDs) 使用 RRDtool 来可视化温度读数。由于我希望图表中的所有内容都以瑞典语(工作日等)显示,因此我在我的 Perl 脚本中将语言环境设置为sv_SE.UTF-8 :
use POSIX qw(locale_h);
setlocale(LC_ALL, "sv_SE.UTF-8");
RRDtool 得到这个,并用瑞典语打印工作日名称。但是,使用 GPRINT 在 RRDtool 图表下写入的数值使用点而不是逗号作为小数分隔符 (XX . xx),我不知道为什么。在瑞典语中,应使用逗号 (XX , xx)。我像这样使用 GPRINT:
GPRINT:temp_out:MIN: Min\\: %6.1lf
我也尝试将 LC_NUMERIC 和 LC_CTYPE 设置为sv_SE.UTF-8,但没有结果。我试过使用sv_SE.iso8859-1,但不行。我还阅读了各种 printf 文档,但尚未提出解决方案。
有没有人设法让 RRDtool 使用逗号而不是点作为小数分隔符?谢谢!
编辑:
rrdtool graph
如果我在命令行使用创建图表并设置了LC_NUMERIC=sv_SE
,我会得到逗号作为小数分隔符。这让我相信我的 Perl 脚本不会在我的setlocale
. 还在调查...