Python text,usetex=true设置也会渲染轴标签

Python text,usetex=true设置也会渲染轴标签,python,matplotlib,tex,Python,Matplotlib,Tex,我今天尝试在图形中渲染一些TeX,但没有效果。我意识到,matplotlibrc文件中的text.usetex被设置为False。 当我将rc('text',usetex=True)添加到脚本时,轴标签也呈现为TeX,这是不需要的。 我不记得在matplotlib 1.3.0之前必须设置这个,我也不记得渲染TeX有任何困难 还有其他人经历过这种行为吗 例如: import matplotlib.patheffects as PathEffects # matplotlib.rc('text',

我今天尝试在图形中渲染一些TeX,但没有效果。我意识到,matplotlibrc文件中的
text.usetex
被设置为
False
。 当我将
rc('text',usetex=True)
添加到脚本时,轴标签也呈现为TeX,这是不需要的。 我不记得在matplotlib 1.3.0之前必须设置这个,我也不记得渲染TeX有任何困难

还有其他人经历过这种行为吗

例如:

import matplotlib.patheffects as PathEffects

# matplotlib.rc('text', usetex=True)

fig = plt.figure(figsize=(4,4))
ax = fig.add_axes([0,0,0.9,1])
ax.imshow(randn(20,20))
txt = ax.text(0.1, 0.5, r"Some \LaTeX\ $\alpha=\beta$", transform=ax.transAxes,fontsize=16)
txt.set_path_effects([PathEffects.Stroke(linewidth=3, foreground="w"), PathEffects.Normal()])
产生:

取消对“matplotlib.rc('text',usetex=True)”行的注释会产生:


你的“问题”不是一个真正的问题,但我假设你有以下问题:

您希望使用latex字体向绘图中添加一些文本,或者只添加数学而不使用
rc('text',usetex=True)
(注意,在默认的rcparams文件中,它声明这会影响所有文本)

可以这样做:

import matplotlib.pylab as plt

fig = plt.figure()
plt.annotate(r"$\mathcal{G}r \epsilon \epsilon \kappa$", xy=(5, 2), size=26)
plt.annotate(r"default font", xy=(2, 5), size=16)
plt.annotate(r"latex font", xy=(2, 7), size=20, family='computer modern roman')
plt.plot(range(10))
plt.xlabel("some string")


希望能有所帮助

嗨,Greg,我想我还不够清楚:TeX不会被渲染,除非
usetex=True
我在我的原始问题中添加了一个例子来解释这个问题。我现在看到了你的问题,事实上我认为matplotlib目前不会支持你想要的行为。理想情况下,将arg
usetex=True
传递到
ax中。text(…)
就是您想要的。也许会在github上提出这个问题?