python - 如何在 matplotlib 中正确使用字体?
问题描述
我正在尝试在 Ubuntu 18.04.5(实际上是 Google colab)上使用 Python 3.7.10 和 matplotlib 3.2.2 以指定字体绘制一些字符。
我想我已经STHeiti
正确安装了字体,因为这段代码
import matplotlib.font_manager as mfm
mfm.findSystemFonts()
给
['/usr/share/fonts/truetype/liberation/LiberationMono-Regular.ttf',
'/root/.fonts/STHeiti Medium.ttc',
'/root/.fonts/STHeiti Light.ttc',
...
和这段代码
prop = mfm.FontProperties(fname="/root/.fonts/STHeiti Light.ttc")
plt.text(0.5, 0.5, u'中文', fontproperties=prop)
plt.show()
正确绘制字符和此代码
prop.get_name()
给
'Heiti TC'
然而,这段代码
matplotlib.rcParams['font.family'] = ['Heiti TC']
plt.text(0.5, 0.5, u"中文")
仍然绘制空白框而没有任何错误。
我错过了什么?
解决方案
推荐阅读
- javascript - 为什么有些滑块会发出红光?
- ios - 如何执行激活程序约束
- sql - 下面的 select 语句需要很长时间才能运行
- java - 如何创建 LayoutInflator?
- angular - 用 Typescript 中另一个 observable 的结果填充 observable 中的字段
- rxjs - 从 Observable 重放主题(发出所有以前的事件)
- android - 有没有办法在android中压缩png文件?
- java - 从不同的类添加 JPanel
- ruby-on-rails - 如何使用 Devise gem 在 Ruby on Rails 中保存 has_many 关系?
- mysql - MYSQL ORDER BY strtotime(column) ASC 可能吗?