首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >纠正经典风格的Matplotlib数学字体大小

纠正经典风格的Matplotlib数学字体大小
EN

Stack Overflow用户
提问于 2018-02-01 22:23:39
回答 1查看 441关注 0票数 0

关于这个问题,我见过不少线索,但我似乎无法使它发挥作用。如果你在图中的任何地方加上数学方程,它会比普通文本小得多,希腊字母(特别是当你有分数的时候)甚至更小。我试着修改matplotlibrc,以使标准字体大小更大(标准字体似乎是10个字符),但它说,我必须将它移到一个特殊的位置,才能产生永久的效果,而我找不到。有什么方法可以动态地改变数学公式的字体大小(例如,当我创建一个新的图形时)?我需要你的帮助。我目前运行的是matplotlib的2.1.0版本,总的来说,我在anaconda上运行python (在Mac上)。这是输出:

请注意,我使用style.use('classic')是为了适应所需的整体风格的情节。如果我不使用这种样式,输出就会很好。有什么解决办法还能让我使用这种风格吗?

我将在下面给出一个示例性的代码,这样您就可以看到希腊字母(左轴)的字体有多小。

代码语言:javascript
复制
import matplotlib
from matplotlib import pyplot as plt
from matplotlib import style
style.use('classic')
x = [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30]
y = [4140,3980,3820,3660,3500,3340,3180,3030,2870,2720,2562,2408,2266,2114,1962,1812,1668,1522,1386,1254,1138,1145,1188,1273,1358,1454,1547,1639,1732,1818,1904]
plt.plot(x,y,'g',label='Salzsäure',linewidth=3)
plt.ylabel(r'Elektrische Leitfähigkeit $\sigma$ in $\frac{\mu S}{cm}$')
plt.xlabel('Volumen 0.1M NaOH in mL')
plt.title('Titration einer Salzsäure unbekannter Konzentration')
plt.annotate('Äquivalenzpunkt', xy=(20,1138), xytext=(20,2300),
arrowprops=dict(facecolor='black',shrink=0.05),
)
plt.legend()
plt.grid(True,color='k')
plt.show()
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-02-01 23:01:50

如果你加上这行

代码语言:javascript
复制
plt.rcParams["mathtext.fontset"] =  "dejavusans"

在设置样式之后,您应该得到所需的输出。请注意,分数总是较小,您不能对此做太多。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48572750

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档