matplotlib中文显示乱码问题解决

mac2025-02-27  7

matplotlib中文显示乱码原因:

matplotlib默认不支持中文字符,而默认的英文字体无法显示中文。

解决方式一:

用font_manager处理,可以指定你想要的字体: 1.导入font_manage 2.返回字体 3.只要有用到中文字符的地方都要加入字体参数font_properties,如刻度有用到中文,就要加此参数;在标题有用到中文,也要加此参数…

例子:

import matplotlib.pyplot as plt from matplotlib import font_manager myfont = font_manager.FontProperties(fname = "字体文件路径") plt.xticks(font_properties = myfont) plt.xlabel("标题", font_properties = myfont)

解决方式二:

修改matplotlib底层的字体库(基于windows): 这是一个一劳永逸的办法,不像方法一,每用一次中文字符需要加一次参数。用这个方法只需要每次重新运行软件时,输入6里面的代码就行了。 1.找到mpl-data文件夹 2.mpl-data\fonts\ttf里放进字体文件,如simhei.ttf 3.修改mpl-data文件夹里matplotlibrc文件,保存 4.删除.matplotlib下的缓存文件 5.restart一下 6.代码里加一句plt.rcParams[‘font.sans-serif’]=[‘SimHei’]

plt.rcParams['font.sans-serif']=['SimHei']
最新回复(0)