Python 如何使用matplotlib';什么是乳胶成型器?

Python 如何使用matplotlib';什么是乳胶成型器?,python,matplotlib,tex,python-2.4,Python,Matplotlib,Tex,Python 2.4,我的python脚本中有一个数字,我想在matplotlib中用作绘图标题的一部分。是否有一个函数可以将浮点转换为格式化的TeX字符串 基本上 str(myFloat) 返回 3.5e+20 但是我想要 $3.5 \times 10^{20}$ 或者至少让matplotlib像格式化第二个字符串一样格式化浮点。我还一直在使用python 2.4,因此在旧版本中运行的代码特别受欢迎。您可以执行以下操作: ax.set_title( "${0} \\times 10^{{{1}}}$".for

我的python脚本中有一个数字,我想在matplotlib中用作绘图标题的一部分。是否有一个函数可以将浮点转换为格式化的TeX字符串

基本上

str(myFloat)
返回

3.5e+20
但是我想要

$3.5 \times 10^{20}$

或者至少让matplotlib像格式化第二个字符串一样格式化浮点。我还一直在使用python 2.4,因此在旧版本中运行的代码特别受欢迎。

您可以执行以下操作:

ax.set_title( "${0} \\times 10^{{{1}}}$".format('3.5','+20'))
旧式:

ax.set_title( "$%s \\times 10^{%s}$" % ('3.5','+20'))

使用旧的stype格式:

print r'$%s \times 10^{%s}$' % tuple('3.5e+20'.split('e+'))
采用新格式:

print r'${} \times 10^{{{}}}$'.format(*'3.5e+20'.split('e+'))
安装软件包:

并将标题的格式设置为:

ax.set_title('${}$'.format(num2tex(3.5e20)))
或者使用
\u repr\u latex\u()
方法:

ax.set_title(num2tex(3.5e20)._repr_latex_())
这会给你同样的东西

num2tex
继承自
str
,因此
format
函数可以像用于字符串一样使用:

ax.set_title('${:.2e}$'.format(num2tex(3.5e20)))

免责声明:我(最近)创建了
num2tex
。它在我的工作流程中运行良好,我现在正试图从其他可能有兴趣使用它的人那里获得反馈。

对于旧版本的python,您有其他选择吗?我一直在使用2.4,但是string.format()在2.6中是新的。好吧。。。我加上去了!双反斜杠对于在matplotlib中正确解释
\times
非常重要。。。
ax.set_title('${:.2e}$'.format(num2tex(3.5e20)))