Python中matplotlib如何改变画图的字体

作者:一骑代码走天涯 时间:2023-02-19 16:46:38 

事情是这样的:平时我汇报或者写论文需要画图,都会喜欢用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

步骤:

1. 下载必要的支持库

sudo apt-get install fontconfig
sudo apt install ttf-mscorefonts-installer

Python中matplotlib如何改变画图的字体

这里需要用 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 字体的显示顺序,就用下图的指令:

Python中matplotlib如何改变画图的字体

如果想强制只使用一种字体,也可以再加入下面的指令 (e.g. 只用 sans-serifArial 字体)

plt.rcParams['font.sans-serif'] = 'Arial'

来源:https://blog.csdn.net/m0_48922254/article/details/119613051

标签:Python,matplotlib,画图,字体
0
投稿

猜你喜欢

  • Python中 CSV格式清洗与转换的实例代码

    2023-02-19 02:23:57
  • Django+mysql配置与简单操作数据库实例代码

    2024-01-14 09:19:28
  • windows下vue-cli及webpack搭建安装环境

    2024-04-27 16:06:39
  • Bootstrap导航条学习使用(二)

    2024-05-02 17:31:16
  • 一个完美网站的101项指标.第七部分.W3C标准

    2008-03-01 09:31:00
  • Python将字符串常量转化为变量方法总结

    2023-07-14 00:36:58
  • python numpy库中数组遍历的方法

    2021-03-20 16:57:28
  • 详细讲解MySQL数据库对文件操作的封装

    2008-12-17 16:08:00
  • python使用pip安装SciPy、SymPy、matplotlib教程

    2022-03-05 01:46:12
  • SQL Server 2005代理服务应用软件组成

    2009-02-19 17:19:00
  • MySQL中使用or、in与union all在查询命令下的效率对比

    2024-01-16 02:28:45
  • 取numpy数组的某几行某几列方法

    2022-03-10 02:04:56
  • 一步步教你用python连接oracle数据库

    2024-01-12 22:54:20
  • pyhton列表转换为数组的实例

    2021-01-12 08:14:31
  • 使用APScheduler3.0.1 实现定时任务的方法

    2023-12-12 04:16:05
  • python实现发送QQ邮件(可加附件)

    2023-01-21 18:37:00
  • Python中栈的详细介绍

    2023-05-16 07:22:02
  • 浏览器事件循环与vue nextTicket的实现

    2024-05-09 09:25:26
  • python3 wechatpy微信支付的项目实践

    2023-08-29 14:13:36
  • vue新玩法VueUse工具库具体用法@vueuse/core详解

    2023-07-02 16:55:44
  • asp之家 网络编程 m.aspxhome.com