我试图做一些相对简单的事情:
我希望能够增加一个字母的字体(例如一个LaTeX变量,比如30),并将标签中的其他字母保持为某种字体(比如20)。
有没有人有快速解决方案?这对我来说似乎相当复杂。我尝试使用{ }
用于每个"项目"在标签
plt.plot(a,b,'g',linewidth=3.5, label = 'a')
plt.plot(c,d,'r',linewidth=3.5, label = 'c')
plt.legend(labelspacing = 1.0,loc=1,prop={'size':40})
plt.xlabel({'a',fontsize=50},{ 'N',fontsize = 20})
plt.ylabel('%',fontsize =30)
谢谢!
答案 0 :(得分:3)
以下是LaTeX的解决方案。我的机器没有安装LaTeX,所以我没有仔细测试过。
plt.plot(a,b,'g',linewidth=3.5, label = 'a')
plt.rc('text', usetex=True)
plt.legend(labelspacing = 1.0,loc=1,prop={'size':40})
plt.xlabel(r'{\fontsize{50pt}{3em}\selectfont{}a}{\fontsize{20pt}{3em}\selectfont{}N')
(注意字符串前的r
。这告诉pylab只是将字符串作为原始字符串直接发送给LaTeX,而不是将\ f和\ s视为特殊字符)
你可以使用LaTeX的大小命令更精细(你可以指定实际的字体,或者使用各种版本的\ large,\ Large,\ small \ tiny ...命令)。
答案 1 :(得分:1)
一种解决方案是使用text()并进行多次调用,仔细选择每个字母的位置:
import pylab as plt
a=[0,1]
b=[0,1]
plt.plot(a,b,'g',linewidth=3.5, label = 'a')
plt.rc('text', usetex=True)
plt.legend(labelspacing = 1.0,loc=1,prop={'size':40})
plt.text(0.45,-0.08,'a',fontsize=50)
plt.text(0.53,-0.08, 'N',fontsize = 20)
这不是理想的。另一种选择是通过LaTeX。请参阅其他答案我即将发布。