问题说明:

在VSCode中使用Python的matplotlib绘图函数时,中文字符显示乱码。

代码如下:

import math  
import numpy as np  
import matplotlib.pyplot as plt  

x = np.arange(-8, 8, 0.1 )  
e = math.e  
sigmoid = 1 / (1 + e ** (-x))  

plt.title("Sigmoid激活函数")  
plt.plot(x , sigmoid)  
plt.show()

运行后效果如下图:

可以发现对于plt.title("Sigmoid激活函数")语句中的中文显示不出来。

解决方案:

从Windows系统中找到中文字体的.ttf格式文件

文件夹对应路径:C:\Windows\Fonts

右键字体,打开属性,记录文件名并复制该文件  # 这里以宋体为例  

 文件名为simsun;复制该文件,到matplotlibmpl-datafonts/ttf文件夹

 在电脑中找到matplotlibrc文件并用编译器打开  # 这里我用的是VSCode

 Ctrl+F,找到并修改如下两项:

font.family

axes.unicode_minus

统一去掉①②两项前#符号,将①后改为前步中所复制字体文件名;将②后True改为False

如下图:

保存之后,重新运行出问题的编辑器内核。 

重新运行出问题的代码,发现成功显示中文。

Logo

GitCode 天启AI是一款由 GitCode 团队打造的智能助手,基于先进的LLM(大语言模型)与多智能体 Agent 技术构建,致力于为用户提供高效、智能、多模态的创作与开发支持。它不仅支持自然语言对话,还具备处理文件、生成 PPT、撰写分析报告、开发 Web 应用等多项能力,真正做到“一句话,让 Al帮你完成复杂任务”。

更多推荐