python设置matplotlib正确显示中文的方法
发表于:2024-11-26 作者:千家信息网编辑
千家信息网最后更新 2024年11月26日,这篇文章主要介绍"python设置matplotlib正确显示中文的方法"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"python设置matplotlib正确
千家信息网最后更新 2024年11月26日python设置matplotlib正确显示中文的方法二、解决方法
2. 方式二
3. 方式三
4. 方式四
这篇文章主要介绍"python设置matplotlib正确显示中文的方法"的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇"python设置matplotlib正确显示中文的方法"文章能帮助大家解决问题。
一、前言
matplotlib是 Python 优秀的数据可视化第三方库,matplotlib是基于 numpy 的一套 Python 工具包。这个包提供了丰富的数据绘图工具,主要用于绘制一些统计图形。
Matplotlib库由各种可视化类构成,内部结构复杂,受 Matlab 启发 matplotlib.pyplot 是绘制各类可视化图形的命令子库,相当于快捷方式。
import matplotlib.pyplot as plt
可 matplotlib 并不支持中文显示。有中文显示会出现如下问题:
# -*- coding: UTF-8 -*-"""@Author :叶庭云@公众号 :修炼Python@CSDN :https://yetingyun.blog.csdn.net/三折线 黑白灰风格 标签label 标记点形状"""import matplotlib.pyplot as plt# 生成x轴数据 列表推导式x_data = [i for i in range(0, 55, 5)]# 构造y轴数据y_data1 = [0.5, 0.62, 0.72, 0.78, 0.85, 0.7, 0.64, 0.44, 0.29, 0.15, 0.09]y_data2 = [0.5, 0.67, 0.71, 0.76, 0.79, 0.66, 0.58, 0.44, 0.38, 0.26, 0.18]y_data3 = [0.5, 0.59, 0.72, 0.74, 0.76, 0.68, 0.58, 0.48, 0.4, 0.36, 0.3]# 设置图形显示风格plt.style.use('ggplot')# 设置figure大小 像素plt.figure(figsize=(8, 5), dpi=100)# 绘制三条折线 点的形状 颜色 标签:用于图例显示plt.plot(x_data, y_data1, marker='^', color="k", label="设备1")plt.plot(x_data, y_data2, marker="o", color="k", label="设备2")plt.plot(x_data, y_data3, marker="s", color="k", label="设备3")# x y 轴标签 字体大小plt.xlabel("时间周期/min", fontsize=13)plt.ylabel("直接信任度值", fontsize=13)# 显示图例plt.legend()# 保存图片 展示showplt.savefig("折线图01.png", dpi=200)plt.show()
可 matplotlib 并不支持中文显示。有中文显示会出现如下问题:
# -*- coding: UTF-8 -*-"""@Author :叶庭云@公众号 :修炼Python@CSDN :https://yetingyun.blog.csdn.net/三折线 黑白灰风格 标签label 标记点形状"""import matplotlib.pyplot as plt# 生成x轴数据 列表推导式x_data = [i for i in range(0, 55, 5)]# 构造y轴数据y_data1 = [0.5, 0.62, 0.72, 0.78, 0.85, 0.7, 0.64, 0.44, 0.29, 0.15, 0.09]y_data2 = [0.5, 0.67, 0.71, 0.76, 0.79, 0.66, 0.58, 0.44, 0.38, 0.26, 0.18]y_data3 = [0.5, 0.59, 0.72, 0.74, 0.76, 0.68, 0.58, 0.48, 0.4, 0.36, 0.3]# 设置图形显示风格plt.style.use('ggplot')# 设置figure大小 像素plt.figure(figsize=(8, 5), dpi=100)# 绘制三条折线 点的形状 颜色 标签:用于图例显示plt.plot(x_data, y_data1, marker='^', color="k", label="设备1")plt.plot(x_data, y_data2, marker="o", color="k", label="设备2")plt.plot(x_data, y_data3, marker="s", color="k", label="设备3")# x y 轴标签 字体大小plt.xlabel("时间周期/min", fontsize=13)plt.ylabel("直接信任度值", fontsize=13)# 显示图例plt.legend()# 保存图片 展示showplt.savefig("折线图01.png", dpi=200)plt.show()
需要我们手动一下下设置~~,才能解决中文显示的问题。
二、解决方法
1. 方式一
from matplotlib.font_manager import FontProperties # 导入FontPropertiesfont = FontProperties(fname="SimHei.ttf", size=14) # 设置字体# 哪里需要显示中文就在哪里设置
# -*- coding: UTF-8 -*-"""@Author :叶庭云@公众号 :修炼Python@CSDN :https://yetingyun.blog.csdn.net/三折线 黑白灰风格 标签label 标记点形状"""import matplotlib.pyplot as pltfrom matplotlib.font_manager import FontProperties # 步骤一# 生成x轴数据 列表推导式x_data = [i for i in range(0, 55, 5)]# 构造y轴数据y_data1 = [0.5, 0.62, 0.72, 0.78, 0.85, 0.7, 0.64, 0.44, 0.29, 0.15, 0.09]y_data2 = [0.5, 0.67, 0.71, 0.76, 0.79, 0.66, 0.58, 0.44, 0.38, 0.26, 0.18]y_data3 = [0.5, 0.59, 0.72, 0.74, 0.76, 0.68, 0.58, 0.48, 0.4, 0.36, 0.3]# 设置图形显示风格plt.style.use('ggplot')font = FontProperties(fname="SimHei.ttf", size=14) # 步骤二# 设置figure大小 像素plt.figure(figsize=(8, 5), dpi=100)# 绘制三条折线 点的形状 颜色 标签:用于图例显示plt.plot(x_data, y_data1, marker='^', color="k", label="设备1")plt.plot(x_data, y_data2, marker="o", color="k", label="设备2")plt.plot(x_data, y_data3, marker="s", color="k", label="设备3")# x y 轴标签 字体大小plt.xlabel("时间周期/min", fontsize=13, fontproperties=font)plt.ylabel("直接信任度值", fontsize=13, fontproperties=font)# 显示图例plt.legend(prop=font)# 保存图片 展示showplt.savefig("折线图01.png", dpi=200)plt.show()
2. 方式二
通过 fontdict 字典参数来设置
fontdict={"family": "KaiTi", "size": 15, "color": "r"}
# -*- coding: UTF-8 -*-"""@Author :叶庭云@公众号 :修炼Python@CSDN :https://yetingyun.blog.csdn.net/三折线 黑白灰风格 标签label 标记点形状"""import matplotlib.pyplot as plt# 生成x轴数据 列表推导式x_data = [i for i in range(0, 55, 5)]# 构造y轴数据y_data1 = [0.5, 0.62, 0.72, 0.78, 0.85, 0.7, 0.64, 0.44, 0.29, 0.15, 0.09]y_data2 = [0.5, 0.67, 0.71, 0.76, 0.79, 0.66, 0.58, 0.44, 0.38, 0.26, 0.18]y_data3 = [0.5, 0.59, 0.72, 0.74, 0.76, 0.68, 0.58, 0.48, 0.4, 0.36, 0.3]# 设置图形显示风格plt.style.use('ggplot')# 设置figure大小 像素plt.figure(figsize=(8, 5), dpi=100)# 绘制三条折线 点的形状 颜色 标签:用于图例显示plt.plot(x_data, y_data1, marker='^', color="k", label="设备1")plt.plot(x_data, y_data2, marker="o", color="k", label="设备2")plt.plot(x_data, y_data3, marker="s", color="k", label="设备3")# x y 轴标签 字体大小plt.xlabel("时间周期/min", fontsize=13, fontdict={"family": "KaiTi", "size": 15, "color": "r"})plt.ylabel("直接信任度值", fontsize=13, fontdict={"family": "KaiTi", "size": 15, "color": "k"})# 显示图例plt.legend(prop={'family': 'SimHei', 'size': 16})# 保存图片 展示showplt.savefig("折线图01.png", dpi=200)plt.show()
3. 方式三
改变全局的字体
# matplotlib其实是不支持显示中文的 显示中文需要一行代码设置字体mpl.rcParams['font.family'] = 'SimHei'plt.rcParams['axes.unicode_minus'] = False # 步骤二(解决坐标轴负数的负号显示问题)
# -*- coding: UTF-8 -*-"""@Author :叶庭云@公众号 :修炼Python@CSDN :https://yetingyun.blog.csdn.net/三折线 黑白灰风格 标签label 标记点形状"""import matplotlib.pyplot as pltimport matplotlib as mpl# 生成x轴数据 列表推导式x_data = [i for i in range(0, 55, 5)]# 构造y轴数据y_data1 = [0.5, 0.62, 0.72, 0.78, 0.85, 0.7, 0.64, 0.44, 0.29, 0.15, 0.09]y_data2 = [0.5, 0.67, 0.71, 0.76, 0.79, 0.66, 0.58, 0.44, 0.38, 0.26, 0.18]y_data3 = [0.5, 0.59, 0.72, 0.74, 0.76, 0.68, 0.58, 0.48, 0.4, 0.36, 0.3]# matplotlib其实是不支持显示中文的 显示中文需要一行代码设置字体mpl.rcParams['font.family'] = 'SimHei'plt.rcParams['axes.unicode_minus'] = False # 步骤二(解决坐标轴负数的负号显示问题)# 设置图形显示风格plt.style.use('ggplot')# 设置figure大小 像素plt.figure(figsize=(8, 5), dpi=100)# 绘制三条折线 点的形状 颜色 标签:用于图例显示plt.plot(x_data, y_data1, marker='^', color="k", label="设备1")plt.plot(x_data, y_data2, marker="o", color="k", label="设备2")plt.plot(x_data, y_data3, marker="s", color="k", label="设备3")# x y 轴标签 字体大小plt.xlabel("时间周期/min", fontsize=13)plt.ylabel("直接信任度值", fontsize=13)# 显示图例plt.legend()# 保存图片 展示showplt.savefig("折线图01.png", dpi=200)plt.show()
4. 方式四
同样也是全局改变字体的方法
font = {'family' : 'SimHei', 'weight' : 'bold', 'size' : '16'}plt.rc('font', **font) # 步骤一(设置字体的更多属性)plt.rc('axes', unicode_minus=False) # 步骤二(解决坐标轴负数的负号显示问题)
# -*- coding: UTF-8 -*-"""@Author :叶庭云@公众号 :修炼Python@CSDN :https://yetingyun.blog.csdn.net/三折线 黑白灰风格 标签label 标记点形状"""import matplotlib.pyplot as plt# 生成x轴数据 列表推导式x_data = [i for i in range(0, 55, 5)]# 构造y轴数据y_data1 = [0.5, 0.62, 0.72, 0.78, 0.85, 0.7, 0.64, 0.44, 0.29, 0.15, 0.09]y_data2 = [0.5, 0.67, 0.71, 0.76, 0.79, 0.66, 0.58, 0.44, 0.38, 0.26, 0.18]y_data3 = [0.5, 0.59, 0.72, 0.74, 0.76, 0.68, 0.58, 0.48, 0.4, 0.36, 0.3]font = {'family' : 'SimHei', 'weight' : 'bold', 'size' : '16'}plt.rc('font', **font) # 步骤一(设置字体的更多属性)plt.rc('axes', unicode_minus=False) # 步骤二(解决坐标轴负数的负号显示问题)# 设置图形显示风格plt.style.use('ggplot')# 设置figure大小 像素plt.figure(figsize=(8, 5), dpi=100)# 绘制三条折线 点的形状 颜色 标签:用于图例显示plt.plot(x_data, y_data1, marker='^', color="k", label="设备1")plt.plot(x_data, y_data2, marker="o", color="k", label="设备2")plt.plot(x_data, y_data3, marker="s", color="k", label="设备3")# x y 轴标签 字体大小plt.xlabel("时间周期/min", fontsize=13)plt.ylabel("直接信任度值", fontsize=13)# 显示图例plt.legend()# 保存图片 展示showplt.savefig("折线图01.png", dpi=200)plt.show()
关于"python设置matplotlib正确显示中文的方法"的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识,可以关注行业资讯频道,小编每天都会为大家更新不同的知识点。
标签
设备
数据
字体
图例
大小
形状
折线
风格
中文
图形
步骤
问题
方法
信任度
像素
公众
周期
图片
时间
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
江西pdu服务器电源运用
2012数据库可疑修复
硬盘数据库选择
邮储银行软件开发解决户口吗
信号满格无法连接到服务器怎么办
软件开发岗位角色sa
省市县三级联动 的数据库
能源大数据网络技术研究院
部队网络安全发言
浪潮企业大数据库
连接另一台电脑sql数据库
消防队开展网络安全稿件
数据库引用函数
增强网络安全意识小故事
司法所做实网络安全工作
霆智服务器开机怎么进入系统
网络安全岗位技能大赛
数据库中如何增加表中的信息
小白测评数据库信息
杭州新方向网络技术
dayz服务器租赁
网络安全大赛体会
计算机网络技术和应用技术有什么区别
网络安全宣传周活动拉开帷幕
计算机网络技术顶岗实习月报
在数据库中的数据模型包括
网络安全相关的英文词语
如何恢复数据库中数据
湖北软件开发售后保障
软件开发可持续环境发展