2024 解决matplotlib中文字体问题

第一种代码(失败代码)

import matplotlib as mpl
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontPropertiesfont_path = '/Users/huangbaixi/Desktop/SimHei.ttf'def plot_demo():#print(mpl.get_cachedir())# 绘制折线图font_prop = FontProperties(fname=font_path)plt.rcParams['font.sans-serif'] = [font_prop.get_name()]plt.rcParams['axes.unicode_minus'] = Falseyear = [2017, 2018, 2019, 2020]people = [20, 40, 60, 70]# 生成图表plt.plot(year, people)plt.xlabel('年份')plt.ylabel('人口')plt.title('人口增长')# 设置纵坐标刻度plt.yticks([0, 20, 40, 60, 80])# 设置填充选项:参数分别对应横坐标,纵坐标,纵坐标填充起始值,填充颜色plt.fill_between(year, people, 20, color='green')# 显示图表# plt.savefig("./plt.png")plt.show()

这一版代码会出现

findfont: Generic family ‘sans-serif’ not found because none of the following families were found: SimHei

查询发现:
在这里插入图片描述

rcParams 有概率失败

第二种方法(指定应用)

import matplotlib as mpl
import matplotlib.pyplot as plt
from matplotlib.font_manager import FontPropertiesfont_path = '/Users/huangbaixi/Desktop/SimHei.ttf'
font_prop = FontProperties(fname=font_path)def plot_demo():year = [2017, 2018, 2019, 2020]people = [20, 40, 60, 70]plt.plot(year, people)plt.xlabel('年份', fontproperties=font_prop)plt.ylabel('人口', fontproperties=font_prop)plt.title('人口增长', fontproperties=font_prop)plt.yticks([0, 20, 40, 60, 80])plt.fill_between(year, people, 20, color='green')plt.show()plot_demo()

这是成功的。
在这里插入图片描述

第三种方法(全局应用)

import matplotlib
# font_path = '/usr/share/fonts/SimHei.ttf'
font_path = '/Users/huangbaixi/Desktop/SimHei.ttf'
# 添加字体路径
matplotlib.font_manager.fontManager.addfont(font_path)# 设置 matplotlib 的全局参数
matplotlib.rcParams['font.family'] = 'sans-serif'
matplotlib.rcParams['font.sans-serif'] = ['SimHei']  # 使用 SimHei 字体
matplotlib.rcParams['axes.unicode_minus'] = False  # 正常显示负号# 定义绘图函数
def plot_demo():year = [2017, 2018, 2019, 2020]people = [20, 40, 60, 70]plt.plot(year, people)plt.xlabel('年份')plt.ylabel('人口')plt.title('人口增长')plt.yticks([0, 20, 40, 60, 80])plt.fill_between(year, people, 20, color='green')plt.show()

这也是可以的。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/624504.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

操作系统导论-课后作业-ch5

关于man的使用 man 系统参考手册 man n name 在系统手册第n章查看name1. 代码&#xff1a; #include <stdio.h> #include <sys/types.h> #include <unistd.h> #include <sys/wait.h>int main() {int x 100;int rc fork();if (rc -1) {fprintf…

16位单片机单片机S1C17153

16位单片机单片机 .16KB ROM / 2KB内存 * S1C17653对于程序开发很有用。 .产生具有内置振荡器的操作时钟。 - OSC3B振荡器电路&#xff1a;2MHz/1MHz/500kHz&#xff08;类型&#xff09;内部振荡器电路 -OSC1无振荡器电路&#xff1a;32.768 kHz&#xff08;类型&#xf…

SSL证书与HTTPS的关系

SSL证书是一种数字证书&#xff0c;由权威的证书颁发机构颁发。它包含了一个公钥和有关证书所有者的一些信息&#xff0c;如名称、组织、邮箱等。SSL证书的主要作用是实现数据加密和身份验证&#xff0c;确保数据在传输过程中的安全性和完整性。 HTTPS是一种基于HTTP协议的安全…

R语言【技巧】——判断自定义函数的传参内容是否符合要求

1. 利用 if 条件判断&#xff0c;stop 语句报错 比如 对一个应该传入数值型&#xff0c;数值为 0 或 1 的参数&#xff1a; if(add.strat<0 | add.strat>1){stop("add.strat represents the fraction of pseudoabsences that aresampled environmentally stratifi…

༺༽༾ཊ—游戏-01_2D-开发—ཏ༿༼༻

首先利用安装好的Unity Hub创建一个unity 2D&#xff08;URP渲染管线&#xff09;项目 选择个人喜欢的操作格局&#xff08;这里采用2 by 3&#xff09; 在Project项目管理中将双栏改为单栏模式&#xff08;个人喜好&#xff09; 找到首选项&#xff08;Preferences&#xff09…

Django教程第4章 | Web开发实战-三种验证码实现

系列&#xff1a;Django学习教程 验证码的存在是为了防止系统被暴力破解攻击&#xff0c;几乎每个系统都有验证码。下面将介绍三种生成验证码方式。 您可以根据你自己的需要进行学习。 手动生成验证码 安装绘图依赖&#xff0c;利用的是画图模块 PIL 以及随机模块 random 在后…

鸿蒙开发-UI-布局-线性布局

鸿蒙开发-序言 鸿蒙开发-工具 鸿蒙开发-初体验 鸿蒙开发-运行机制 鸿蒙开发-运行机制-Stage模型 鸿蒙开发-UI 鸿蒙开发-UI-组件 鸿蒙开发-UI-组件-状态管理 鸿蒙开发-UI-应用-状态管理 鸿蒙开发-UI-渲染控制 鸿蒙开发-UI-布局 文章目录 前言 一、基本概念 二、布局子元素 1.子元…

LoadMap9:C++的Template模板函数

1. 模板函数与模板类 模板Template和函数重载是实现静态多态的两种重要途径。对于模板而言&#xff0c;其通常用于模板函数和模板类中。其基本语法结构为&#xff1a; template <typename XXXX> // XXXX 代表定义的模板数据类型的名称1.1 模板函数 使用 template 关键…

User-Agent(用户代理)是什么?

User-Agent&#xff08;用户代理&#xff09;是什么&#xff1f; User-Agent 即用户代理&#xff0c;简称“UA”&#xff0c;它是一个特殊字符串头。网站服务器通过识别 “UA”来确定用户所使用的操作系统版本、CPU 类型、浏览器版本等信息。而网站服务器则通过判断 UA 来给客…

Android 13 关闭相册的编辑功能

介绍 因为做的是学生机&#xff0c;客户不希望相册的图片可以编辑。 分析 通过字符串我们找到了几个资源文件&#xff0c;以下只展示其中一个 路径&#xff1a;vendor/mediatek/proprietary/packages/apps/Gallery2/res/menu/operation.xml <item android:id"id/acti…

python3.7conda安装opencv

1.conda创建虚拟环境 conda create --name opencv3.7 python3.72.激活虚拟环境 conda activate opencv3.7 3.安装 opencv pip install -i https://pypi.mirrors.ustc.edu.cn/simple/ opencv-python3.4.2.16 python3.7安装opencv python 和 opencv-contrib-python的相关问题…

Hotspot源码解析-第十九章-ClassLoaderData、符号表、字符串表的初始化

第十九章-ClassLoaderData初始化 讲解本章先从一张图开始 众所周知&#xff0c;Java类的相关信息都是存储在元空间中的&#xff0c;但是是怎么存储的&#xff0c;相信很多读者是不清楚的&#xff0c;这里就不得不涉及到ClassLoaderDataGraph、classLoader、classLoaderData&…

MIT 6s081 lab 5: xv6 lazy page allocation

Page faults Basic 通过page fault可以实现一系列的虚拟内存功能&#xff1a; lazy allocationcopy-on-write forkdemand pagingmemory mapped files 虚拟内存的两个主要的优点&#xff1a; 1、隔离性&#xff1a;每个应用程序拥有自己的地址空间&#xff0c;因此不可能修…

【Dart】=> [06] Dart初体验-类Class-构造函数-继承-mixin-异步编程-链式调用-泛型-异常

目录 能够定义并使用Dart的类类的定义构造函数私有属性和方法继承mixin异步编程FutureFuture链式调用async - awaitdynamic类型泛型异常 能够定义并使用Dart的类 Dart是一门面向对象的编程语言&#xff0c;所有的对象都是类的实例 通过类我们可以对数据和方法进行封装复用 学习…

(2023版)斯坦福CS231n学习笔记:DL与CV教程 (1) | 引言与知识基础

前言 &#x1f4da; 笔记专栏&#xff1a;斯坦福CS231N&#xff1a;面向视觉识别的卷积神经网络&#xff08;23&#xff09;&#x1f517; 课程链接&#xff1a;https://www.bilibili.com/video/BV1xV411R7i5&#x1f4bb; CS231n: 深度学习计算机视觉&#xff08;2017&#xf…

NLP论文阅读记录 - 2022 | WOS 用于摘要法律文本的有效深度学习方法

文章目录 前言0、论文摘要一、Introduction1.1目标问题 二.相关工作三.本文方法四 实验效果4.1数据集4.2 对比模型4.3实施细节4.4评估指标4.5 实验结果4.6 细粒度分析 五 总结 前言 Effective deep learning approaches for summarization of legal texts&#xff08;22&#x…

Linux -- Nginx服务基础

4.1Nginx服务基础 Nginx(发音为[engine x])专为性能优化而开发&#xff0c;其最知名的优点是它的稳定性和低系统资源消 耗&#xff0c;以及对HTTP并发连接的高处理能力&#xff08;单台物理服务器可支持30000~50000个并发请求&#xff09;&#xff0c;正因 为如此&#xff0c;…

html中flex的使用

在HTML中&#xff0c;flex属性用于设置弹性容器的子元素的布局方式。使用flex属性可以实现灵活的布局&#xff0c;使子元素根据可用空间自动调整大小。flex属性有三个值&#xff1a;flex-grow、flex-shrink和flex-basis。 flex-grow&#xff1a;指定子元素的放大比例&#xff…

路由器路由配置解析

路由器是网络中负责转发数据包的设备&#xff0c;通过配置路由规则&#xff0c;确定数据包的传输路径。在本文中&#xff0c;我们将解析一个路由器的配置&#xff0c;并说明每个路由规则的含义。 路由器配置 rootr-63-VM:# ip route default via 192.168.157.2 dev eth1 10.1…

vscode中关于python的一些常用配置

文章目录 python cv2 提示配置第一步 配置提示信息第二部 重启vs 可能还不行&#xff0c;那就重新安装以下opencv-python 配置pytest还是如上&#xff0c;将下入的位置打开编写测试用例 配置跨文件import在工作目录中新建一个.env文件输入内容如下打开.vscode中的setting.json …