Python matplotlib本地化的不同结果取决于解释器

Python matplotlib本地化的不同结果取决于解释器,python,matplotlib,terminal,spyder,Python,Matplotlib,Terminal,Spyder,根据脚本是通过终端还是通过spyder执行的,同一脚本提供了轴的两种不同格式变体 我在一台带有spyder(本地化正常,小数点为逗号)和python/ipython(本地化无效,小数点为点)的德国pc上尝试了以下代码 导入matplotlib.pyplot作为plt plt.rcParams['axes.formatter.use_locale']=True a=[.1,2,3,4,5] b=[.1,2,3,4,5] plt.绘图(a、b) plt.show() 我希望这两个变量的结果相同,所

根据脚本是通过终端还是通过spyder执行的,同一脚本提供了轴的两种不同格式变体

我在一台带有spyder(本地化正常,小数点为逗号)和python/ipython(本地化无效,小数点为点)的德国pc上尝试了以下代码

导入matplotlib.pyplot作为plt
plt.rcParams['axes.formatter.use_locale']=True
a=[.1,2,3,4,5]
b=[.1,2,3,4,5]
plt.绘图(a、b)
plt.show()

我希望这两个变量的结果相同,所以小数点用逗号。

您需要设置区域设置。大概spyder是为您做这件事的,但也有类似于导入区域设置的东西;setlocale(locale.LC_ALL“”)是的,如果在导入matplotlib之后放置它,则会起作用。谢谢,在结束stackexchange问题之前:我在文档中没有发现任何关于您的技巧的提示。我是否忽略了这一点,还是太明显而无法记录?但是无论如何,非常感谢。我想重点是
use\u locale
被假定为使用任何设置的语言环境。因此,您需要确保在某个点设置一些区域设置。