解决Python中matplotlib 库画图中文和负号显示为方框的问题

解决Python中matplotlib 库画图中文和负号显示为方框的问题

注意:

语言版本:Python 3.10.4

编译器版本:PyCharm 2021.3.2

操作系统:Win11

文章目录

  • 解决Python中matplotlib 库画图中文和负号显示为方框的问题
    • 前言
    • 解决办法
    • 程序测试

前言

作者最近研究Python数据可视化的时候,就遇见了一些问题,那就是我在调用matplotlib库绘制我的图表时,设置图表标签的时候中文变成了空心方框。

问题如下图:

解决Python中matplotlib 库画图中文和负号显示为方框的问题_第1张图片

出现这个情况的原因就是matplotlib中默认使用的字体没有中文字体,就会导致如下情况发生,如果你习惯用英文设置标签,那就没有什么影响,但是对于熟悉使用中文设置标签的人来说,就很烦恼,所以在我翻阅了一些网上的解决方法之后,发现了一个非常好的解决办法。

解决办法

  1. 先看看你安装的matplotlib中有没有中文字体

    路径:C:\Users\你的用户名\ .matplotlib

在这里插入图片描述

找到之后,在这里我是使用Sublime Text打开的,其他的软件都可以

解决Python中matplotlib 库画图中文和负号显示为方框的问题_第2张图片

如果找不到或者想要其他的字体,就就需要去网上下载安装相应的字体,请读者们自行去google

  1. 设置你需要的中文字体

    在这里我推荐使用代码的方法定位,这样更加的方便快捷,代码如下:

    import matplotlib
    
    print(matplotlib.matplotlib_fname())
    

    它运行的结果是:

    C:\Users\你的用户名\你的Python安装路径\site-packages\matplotlib\mpl-data\matplotlibrc
    

    在这里我继续使用Sublime Text打开。

解决Python中matplotlib 库画图中文和负号显示为方框的问题_第3张图片

找到这两个之后修改成如图所示的样子,就可以了。

  1. 解决负号显示为空心方框的问题

    还是刚才那个文件,修改成如下图这样,就可以了。

解决Python中matplotlib 库画图中文和负号显示为方框的问题_第4张图片

保存之后,就成功的解决的这个问题了。

程序测试

import matplotlib.pyplot as plt

plt.plot((1, 2, 3), (4, 5, 6))
plt.xlabel(u'横坐标')
plt.ylabel(u'纵坐标')
plt.show()

它运行的结果如下:
解决Python中matplotlib 库画图中文和负号显示为方框的问题_第5张图片

你可能感兴趣的:(学习中遇见的问题,python,开发语言)