Python中matplotlib如何改变画图的字体
事情是这样的:平时我汇报或者写论文需要画图,都会喜欢用Python的 matplotlib 和 seaborn 把数据📊 📈 和分析结果 🗂 直接画出来,因为这样太方便,而且解析度非常高。
然而,今天老板说想需要我总结下我的分析结果,然后ta说不喜欢 matplotlib 的字体,让我改一改。但是,Jupyter Notebook一直报错说:
Findfont: Font family [‘sans-serif‘] not found. Falling back to DejaVu Sans.
搞得我很头疼🤯🤯🤯
所以,我就花了点时间,研究了matplotlib 究竟如何可以随意改变成 Windowns MS字体。
以下是我的操作系统:
OS:Ubuntu 18.04.5 LTS
Python version:3.6.11
Matplotlib: 3.3.2
Seaborn: 0.10.0
步骤:
下载必要的支持库
sudo apt-get install fontconfig
sudo apt install ttf-mscorefonts-installer
这里需要用 Tab
键选择 <Yes>再按Enter
键同意,之后等程序顺利跑完就可以了。
成功后,就能够在 /usr/share/fonts/truetype/msttcorefonts/ 下找到新下载的 Windows 字体。
2. 更新字体库 + 清理 matplotlib 的缓存
sudo fc-cache -fv
rm -fr ~/.cache/matplotlib
安装完字体,如果不更新字体库,系统是无法知道你有新的字体要导入 matplotlib。 然后,第二个指令是用来防止 matplotlib运行的时候还用旧版本的缓存设定你的图表。删除后,之后运行 matplotlib 就会自动建立一 个新的设定缓存。
3. 打开 Jupyter Notebook
在导入matplotlib和seaborn之后,就可以用
plt.rcParams['font.family']
改变你的字体。举个栗子,如果我想换成sans-serif,然后查看matplotlib sans-serif 字体的显示顺序,就用下图的指令:
如果想强制只使用一种字体,也可以再加入下面的指令 (e.g. 只用 sans-serif 的 Arial 字体)
plt.rcParams['font.sans-serif'] = 'Arial'
到此这篇关于Python中matplotlib如何改变画图的字体的文章就介绍到这了,更多相关Python matplotlib改变画图的字体内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!
免责声明:
① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。
② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341