Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 2.7 字符串格式和LaTeX函数之间的干扰_Python 2.7_Matplotlib_Latex - Fatal编程技术网

Python 2.7 字符串格式和LaTeX函数之间的干扰

Python 2.7 字符串格式和LaTeX函数之间的干扰,python-2.7,matplotlib,latex,Python 2.7,Matplotlib,Latex,假设我进行了一次拟合并获得了参数a(实际上还有更多)。现在我想在一个绘图中有一小段文字,其中说明了参数及其单位。其想法是使用代码: import matplotlib.pyplot as plt a=19389.2323 plt.figure() plt.text(0.5,0.5, r'${0:.1f}\frac{kJ}{mol}$'.format(a/1000)) 但是,最后一行会导致一个KeyError:'kJ',因为花括号是由.format()解释的,而不是被解释为LaTeX函数的一部

假设我进行了一次拟合并获得了参数
a
(实际上还有更多)。现在我想在一个绘图中有一小段文字,其中说明了参数及其单位。其想法是使用代码:

import matplotlib.pyplot as plt
a=19389.2323
plt.figure()
plt.text(0.5,0.5, r'${0:.1f}\frac{kJ}{mol}$'.format(a/1000)) 
但是,最后一行会导致一个
KeyError:'kJ'
,因为花括号是由
.format()
解释的,而不是被解释为LaTeX函数的一部分


当然,我可以将
a
的格式化版本硬编码到代码中,但我希望有人有更好的解决方案

您需要使用另一对花括号来转义latex命令的花括号

plt.text(0.5,0.5, r'${0:.1f}\frac{{kJ}}{{mol}}$'.format(a/1000))