输入下面的代码::
python
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.set_title('这是一个测试标题')
ax.plot([-1, -2, -3], [4, 5, 6])
plt.show()
显示如下:

中文和负号都显示不出来。
解决方法:
python
import matplotlib
print(matplotlib.matplotlib_fname())
比如印出的结果是:
python
C:\Users\DY\.conda\envs\yolo\lib\site-packages\matplotlib\mpl-data\matplotlibrc
用文本编辑器打开这个文件:

查找到#font.family这一行:

去掉#号将其修改为font.family: SimHei

同样的方法,查找axes.unicode_minus:True将其修改为False:

再次运行测试代码:

正常显示。
Ubuntu系统可能没有雅黑字体,使用
python
fc-list :lang=zh
列出所有支持中文的字体,然后在字体中选择一种,例如显示为:
python
/usr/share/fonts/truetype/arphic/uming.ttc: AR PL UMing TW MBE:style=Light
将AR PL UMing TW MBE复制下来,设置:
python
font.family: AR PL UMing TW MBE
即可。