torch7 gnuplot 包中的错误? (ubuntu 16.04)

Bug in torch7 gnuplot package? (ubuntu 16.04)

似乎 gnuplot 正在将所有浮点值四舍五入为整数。绘制线条或曲面时,例如documentation

中的这两条线
x=torch.linspace(-2*math.pi,2*math.pi)
gnuplot.plot(torch.sin(x))

我得到

而不是

不出所料,print(torch.sin(x):type()) 说张量确实是 torch.FloatTensor,所以我不明白舍入可能发生在哪里。

我试了下最新的torch7版本,用luarocks安装了gnuplot,结果还是一样。我不认为问题出在 gnuplot 本身,因为例如,我可以毫无问题地从 Octave 使用它。

我终于找到问题所在了。默认使用的语言环境是法语,因此浮点数使用逗号而不是点表示(例如 1,2 而不是 1.2)。这似乎导致 Gnuplot 截断了数字(它丢弃了逗号后的所有内容)。所以,解决方案就是

os.setlocale('C')