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
这里需要用 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'
来源:https://blog.csdn.net/m0_48922254/article/details/119613051
猜你喜欢
- matplotlib及相关cmap参数的取值在matplotlib中对于图片的显示有如下方法(这不是重点), 其中有cmap=&ls
- 一、 申请企业微信账号,申请地址 https://qy.weixin.qq.com/二、 登陆企业微信账图一图二2、添加微信账号图
- 修改字符串本身是不可能的,因为字符串是不可变类型,只能是通过某些方法来产生它的副本。再把副本赋值给原字符串,达到类似替换的作用。这里介绍几种
- [编者注:]提起数据库,第一个想到的公司,一般都会是Oracle(即甲骨文公司)。Oracle在数据库领域一直处于领先地位。Oracle关系
- 添加配置这里跟我们之前所说的appium测试工具的配置差不多。deviceName:设备名称platformName:测试平台platfor
- 在设计中保持一致性(uniformity)是网页设计中一个重要的组成部分,它能使你的设计有效地传达信息而不会导致用户迷惑或焦虑。保证一致性的
- 昨天在书友会上讨论信息分类和方法,有位朋友问:“大家现在讨论的还是几年前那套web2.0的东西,有没有一些新的东西可以分享?”我当时确实感觉
- 在项目中遇到了个json数据需要解析,利用Python脚本尝试分享给大家如下:import osimport pandas as pdimp
- 1. 图片加载、灰度图、 显示和保存from PIL import Imageimg = Image.open('01.jpg
- 方法一: 代码如下:id=request.form("checkbox") id=Split(id,"
- 如何实现优惠打折? 代码及说明见下:<%@ LANG
- Python django中我们经常用的response有django中的 JsonResponse, HttpResponse,还有DRF
- 图像噪声是指存在于图像数据中的不必要的或多余的干扰信息。在噪声的概念中,通常采用信噪比(Signal-Noise Rate, S
- 从概念上讲,大多数关系数据库系统都是类似的:它们都由一组数据库组成,且每个数据库都包含一组表。但是,所有的系统都有自己的管理数据的方法, M
- 学习前言……又看了很久的SSD算法,今天讲解一下训练部分的代码。预测部分的代码可以参照https
- 完美的渐变透明效果。支持IE,Firefox渐变,自己写的JS框架中用的东西,发出来了。修正完全隐藏时,偶尔不display = "
- 虽然Golang的GC自打一开始,就被人所诟病,但是经过这么多年的发展,Golang的GC已经改善了非常多,变得非常优秀了。以下是Golan
- 一直想着给框架添加邮件发送功能、所以整理下python下邮件发送功能首先python是支持邮件的发送、内置smtp库、支持发送纯文本、HTM
- 在SQL Server 中,如果给表的一个字段设置了默认值,就会在系统表sysobjects中生成一个默认约束。如果想删除这个设置了默认值的
- 前几天,使用python时遇到这么一个需求,删除一个列表中值为1的元素。我寻思着使用remove方法,但是remove方法只会删除第一个,于