Matplotlib 中文显示不是特别友好,要在 Matplotlib 中显示中文,我们可以通过两个方法:
- 下载使用支持中文的字体库。
- 设置 Matplotlib 的字体参数。
下载使用支持中文的字体库:
Matplotlib 默认情况不支持中文,我们可以使用以下简单的方法来解决。
可以在网盘下载: 百度网盘 请输入提取码,提取码:yxqu。
import numpy as np
from matplotlib import pyplot as plt
import matplotlib
# fname 为 你下载的字体库路径,注意 SourceHanSansSC-Bold.otf 字体的路径
zhfont1 = matplotlib.font_manager.FontProperties(fname=r"E:\jupyter_projects\中文字体( OTF 字体)\SourceHanSansSC-Bold.otf")
x = np.arange(1,11)
y = 2 * x + 5
plt.title("菜鸟教程 - 测试", fontproperties=zhfont1)
# fontproperties 设置中文显示,fontsize 设置字体大小
plt.xlabel("x 轴", fontproperties=zhfont1)
plt.ylabel("y 轴", fontproperties=zhfont1)
plt.plot(x,y)
plt.show()
import numpy as np
from matplotlib import pyplot as plt
import matplotlib
# fname 为 你下载的字体库路径,注意 SourceHanSansSC-Bold.otf 字体的路径,size 参数设置字体大小
zhfont1 = matplotlib.font_manager.FontProperties(fname=r"E:\jupyter_projects\中文字体( OTF 字体)\SourceHanSansSC-Bold.otf", size=18)
font1 = {'color':'blue','size':20}
font2 = {'color':'darkred','size':15}
x = np.arange(1,11)
y = 2 * x + 5
# fontdict 可以使用 css 来设置字体样式
plt.title("菜鸟教程 - 测试", fontproperties=zhfont1, fontdict = font1)
# fontproperties 设置中文显示,fontsize 设置字体大小
plt.xlabel("x 轴", fontproperties=zhfont1, fontdict = font2)
plt.ylabel("y 轴", fontproperties=zhfont1, fontdict = font2)
plt.plot(x,y)
plt.show()
原文链接:NumPy Matplotlib | 菜鸟教程
设置 Matplotlib 的字体参数:
在 Windows 系统上,选择 SimHei(黑体)或其他中文字体,并将其设置为 Matplotlib 的默认字体。
import matplotlib.pyplot as plt
plt.rcParams['font.family'] = 'SimHei' # 替换为你选择的字体
# 创建数据
x = [1, 2, 3, 4, 5]
y = [2, 4, 6, 8, 10]
font1 = {'color':'blue','size':20}
font2 = {'color':'darkred','size':15}
# 绘制折线图
plt.plot(x, y)
# 添加标题和标签
plt.title('折线图示例')
plt.xlabel('X轴', fontdict = font2)
plt.ylabel('Y轴', fontdict = font2)
# 显示图形
plt.show()