Ubuntu解决matplotlib.pyplot的title和label中文乱码问题

Ubuntu解决matplotlib.pyplot的title和label中文乱码问题

中文乱码问题示例

使用matplotlib.pyplot画图时,需要在图标题、轴标题处使用中文,用以下代码画出来的图会出现乱码,如下图所示。

t = np.linspace(0, 2*np.pi, 100)
y = np.sin(t)

plt.plot(t, y)
plt.title(u"正弦信号")
plt.xlabel(u"时间")
plt.ylabel(u"幅度")
Ubuntu解决matplotlib.pyplot的title和label中文乱码问题_第1张图片

解决方案

在开头加如下代码。其中,第一句的'Droid Sans Fallback'是Ubuntu自带的汉字字体,第二句的作用是正常显示负号。

matplotlib.rcParams['font.sans-serif'] = ['Droid Sans Fallback']
matplotlib.rcParams['axes.unicode_minus']=False
Ubuntu解决matplotlib.pyplot的title和label中文乱码问题_第2张图片

Reference

matplotlib绘图之中文标题、坐标轴标签乱码问题
Windows系统下最简单方式解决python matplotlib中文乱码问题
matplotlib.pyplot中文标题乱码
matplotlib教程之——自定义配置文件和绘图风格(rcParams和style)
[StackOverFlow] How to load .ttf file in matplotlib using mpl.rcParams?
Python绘图问题:Matplotlib中rcParams使用

你可能感兴趣的:(API应用)