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


猜你喜欢
- 位置参数这是一个求等差数列和的函数,使用必需要传入一个参数n,这就是位置参数def sum(n): sum=0 &
- 查看系统原有Python注:可以将python指向python3,但必须修改一些命令如yum的配置,不然会报错。安装依赖yum instal
- 前言使用Python发邮件,是个简单的话题,可是如何可以优雅的轻松的群发邮件,并附加PDF附件,是很多小伙伴的日常工作,却也是很多小白需要费
- vue-router切换组件时使组件不销毁默认地,使用vue-router切换组件时,离开的组件会被销毁,新进入地组件会创建。那么,有时候,
- SQL查询中什么时候需要使用表别名?今天写MySQL时遇到使用表别名的问题,这里重新总结一下。1、 表名很长时select * from w
- 如下所示:# -*- coding: utf-8 -*-import os import pandas as pdimport numpy
- 一、前言对于行锁和表锁的含义区别,在面试中应该是高频出现的,我们应该对MySQL中的锁有一个系统的认识,更详细的需要自行查阅资料,本篇为概括
- sql查询数组中是否包含某个内容find_in_set如果表Atable中的a字段内容是1,2,3 的格式(a字段是用,分隔的),要查询该字
- 列表添加元素append(),extend(),insert(),+list区别回忆初学python的时候,对列表list添加元素时,对类表
- 1、epochKeras官方文档中给出的解释是:“简单说,epochs指的就是训练过程接中数据将被“轮”多少次”(1)释义:训练过程中当一个
- 最近了解下基于 Token 的身份验证,跟大伙分享下。很多大型网站也都在用,比如 Facebook,Twitter,Google+,Gith
- 引言opencv调用yolov3模型进行深度学习目标检测,以实例进行代码详解对于yolo v3已经训练好的模型,opencv提供了加载相关文
- 如下所示:import osimport reimport stringfile = open("data2.txt")
- 1、Session的存储方式。 session其实分为客户端Session和服务器端Session。 当用户首次与Web服务器建立连接的时候
- 前言之前看到一个有意思的开源项目,主要是可以将一张照片变成卡通漫画的风格。下面给大家放几张官方给出的部分效果图。看到这个效果图,还是非常经验
- UI自动化测试过程中,可能会出现因测试环境不稳定、网络慢等情况,如果不做任何处理的话,会出现无法定位到特定元素而报错,导致自动化测试无法顺利
- 场景一:A网站全站均为UTF-8编码,B网站全站为GB2312编码。A网站提供一段JS代码供B网站调用,该代码会动态生成一个FORM表单,以
- Laplace分布定义:下面先给出Laplace分布实现代码:import matplotlib.pyplot as pltimport n
- 复合主键:create table index_test( a int not null, &nbs
- 本文实例讲述了Python将阿拉伯数字转换为罗马数字的方法。分享给大家供大家参考。具体实现方法如下:def numToRomanNum(Nu