我试图制作一些出版质量的图,但遇到了一个小问题。默认情况下,matplotlib轴标签和图例条目的权重比轴刻度标记更重。无论如何强制轴标签/图例条目与刻度标记的权重相同吗?python matplotlib:将轴标签/图例从粗体更改为常规重量
import matplotlib.pyplot as plt
import numpy as np
plt.rc('text',usetex=True)
font = {'family':'serif','size':16}
plt.rc('font',**font)
plt.rc('legend',**{'fontsize':14})
x = np.linspace(0,2*np.pi,100)
y = np.sin(x)
fig = plt.figure(figsize=(5,5))
p1, = plt.plot(x,y)
p2, = plt.plot(x,x**2)
plt.xlabel('x-Axis')
plt.ylabel('y-Axis')
plt.legend([p1,p2],['Sin(x)','x$^2$'])
plt.gcf().subplots_adjust(left=0.2)
plt.gcf().subplots_adjust(bottom=0.15)
plt.savefig('Test.eps',bbox_inches='tight',format='eps')
plt.show()
我可以用数学模式,但问题(烦恼)是当我有一个句子的标签,即
plt.xlabel('$\mathrm{This is the x-axis}$')
这squishes它一起。我可以通过使用
plt.xlabel('$\mathrm{This\: is\: the\: x-axis}$')
但这需要大量的标点符号。我希望有一些我可以改变的东西,这将允许我绕过\mathrm{}格式,并使用标准的TeX格式。
我试过的另一个选项是使用\text而不是\mathrm,但似乎Python的解释程序在不加载程序包amsmath的情况下无法识别此问题。我也尝试过:
import matplotlib
import matplotlib.pyplot as plt
import numpy as np
plt.rc('text',usetex=True)
font = {'family':'serif','size':16}
plt.rc('font',**font)
plt.rc('legend',**{'fontsize':14})
matplotlib.rcParams['text.latex.preamble']=[r'\usepackage{amsmath}']
x = np.linspace(0,2*np.pi,100)
y = np.sin(x)
fig = plt.figure(figsize=(5,5))
p1, = plt.plot(x,y)
p2, = plt.plot(x,x**2)
plt.xlabel(r'$\text{this is the x-Axis}$')
plt.ylabel('$y-Axis$')
plt.legend([p1,p2],['Sin(x)','x$^2$'])
plt.gcf().subplots_adjust(left=0.2)
plt.gcf().subplots_adjust(bottom=0.15)
plt.savefig('Test.eps',bbox_inches='tight',format='eps')
plt.show()
这也不会返回所需的结果。
2013-04-29
Blink