Sir*_*irC 59 python fonts matplotlib
这听起来像一个简单的问题,但我没有找到任何有效的解决方案来改变python中使用matplotlib制作的图中的字体(而不是字体大小).
我发现了几个教程,通过修改matplotlib存储其默认字体的文件夹中的一些文件来更改matplotlib的默认字体 - 请参阅此博客文章 - 但我正在寻找一个不太激进的解决方案,因为我想使用多个我的情节中的字体(文字,标签,轴标签等).
aid*_*ni8 77
假设您想要标题的Comic Sans和x标签的Helvetica.
csfont = {'fontname':'Comic Sans MS'}
hfont = {'fontname':'Helvetica'}
plt.title('title',**csfont)
plt.xlabel('xlabel', **hfont)
plt.show()
Run Code Online (Sandbox Code Playgroud)
mor*_*ins 38
您还可以使用rcParams全局更改字体系列.
import matplotlib.pyplot as plt
plt.rcParams["font.family"] = "cursive"
# This will change to your computer's default cursive font
Run Code Online (Sandbox Code Playgroud)
matplotlib的字体系列参数列表在这里.
小智 9
Windows 中不包含 Helvetica 字体,因此要使用它,您必须将其下载为 .ttf 文件。然后您可以像这样引用 matplotlib (将“crm10.ttf”替换为您的文件):
import os
from matplotlib import font_manager as fm, rcParams
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
fpath = os.path.join(rcParams["datapath"], "fonts/ttf/cmr10.ttf")
prop = fm.FontProperties(fname=fpath)
fname = os.path.split(fpath)[1]
ax.set_title('This is a special font: {}'.format(fname), fontproperties=prop)
ax.set_xlabel('This is the default font')
plt.show()
Run Code Online (Sandbox Code Playgroud)
print(fpath)将告诉您应该将 .ttf 放在哪里。
您可以在此处查看输出: https ://matplotlib.org/gallery/api/font_file.html
我更喜欢雇用:
from matplotlib import rc
#rc('font',**{'family':'sans-serif','sans-serif':['Helvetica']})
rc('font',**{'family':'serif','serif':['Times']})
rc('text', usetex=True)
Run Code Online (Sandbox Code Playgroud)
import pylab as plb
plb.rcParams['font.size'] = 12
Run Code Online (Sandbox Code Playgroud)
或者
import matplotlib.pyplot as mpl
mpl.rcParams['font.size'] = 12
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
104939 次 |
| 最近记录: |