本博客内容均基于环境:Ubuntu18.04 + Python3.7
中文字体
Matplotlib图像中不能显示中文,报错:Font family ['sans-serif'] not found. Falling back to DejaVu Sans...
按以下步骤解决:
我从Win10中拷贝了msyh.ttf
和simhei.ttf
字体文件,备份在文件夹/home/data/linuxdocus/Documents/Backup/fonts
中。
参考一:
第一步:下载字体:msyh.ttf (微软雅黑)放在系统字体文件夹下:/usr/share/fonts
同时我也复制了下放在matplotlib的字体文件夹下了(不知道这一步是不是必须)/usr/local/lib/python3.5/dist-packages/matplotlib/mpl-data/fonts/ttf/
第二步:修改matplotlib配置文件:sudo vim /usr/local/lib/python3.5/dist-packages/matplotlib/mpl-data/matplotlibrc删除font.family和font.sans-serif两行前的#,并在font.sans-serif后添加中文字体Microsoft YaHei, …(其余不变)
第三步:删除~/.cache/matplotlib下文件fontList.py3k.cache重启python即可
另外:可以执行下这段程序–可以打印出可用的字体:
#! /usr/bin/env python
# -*- coding: utf-8 -*-
from matplotlib.font_manage