python3集成matplotlib画图中文乱码的解决方法

问题描述

在python中使用matplotlib画图,里面的中文会显示乱码方块。

解决方法前提依赖

这是由于matplotlib默认使用的字体中不包含中文字符引起的,可以通过将中文字符加入到默认字体中解决。

前提:查找本地都有哪些中文字体

打开matplotlib字体,默认为C:\Users\用户名\.matplotlib,打开fontList.json,查找中文字体如simHei,song,kai等,分别对应简体黑、宋体、楷体等。

查找到之后,其对应的name字段值即为我们接下来将要设置的中文字体名,复制下来,比如仿宋字体FangSong

 解决方法:

import matplotlib
print(matplotlib.matplotlib_fname())

会输出配置文件路径,如:

E:\python_workspace\TornadoDemo\venv\Lib\site-packages\matplotlib\mpl-data\matplotlibrc

打开此文件,找到#font.family这一行,并将这行的注释#去掉,并在其后添加自己想加入的中文字体名,如:

Python3 + matplotlib 绘制带汉字散点图:

import matplotlib.pyplot as plt


# 定义x集合和y集合
x = [1, 2]
y = [3, 4]
# 绘制散点图,并指定标签
plt.scatter(x, y, label='标签')
# 绘制图像添加标题
plt.title('散点图')
# 绘制坐标轴
plt.xlabel('x轴')
plt.ylabel('y轴')
# 绘制图像显示
plt.show()

猜你喜欢

转载自blog.csdn.net/zhouzhiwengang/article/details/113065312
今日推荐