量化交易学习(五十)解决backtrader绘图不支持中文的问题

在使用backtrader内置的plot功能绘图时,如果想在图上显示中文,比如想显示股票代码所对应的中文名时,会发现,画出来的图不支持中文,中文部分都是一个个的豆腐块。
08e6120dddae832d66bf8190bbe3ca7f.png

这样在查看时会很不方便,那怎么才能解决这个问题呢。

backtrader是通过matplotlib这个库实现绘图功能的,而这个库对中文的支持不好,缺少中文字体。在网上搜了一番后,我发现可以通过 mplfonts 这个库实现对中文的支持。

首先是安装:

1
pip install mplfonts

然后在代码中添加以下代码段就可以让matplotlib支持中文了:

1
2
from mplfonts import use_font
use_font('Noto Serif CJK SC') #指定字体

其中,use_font 函数用于指定matplotlib的字体。安装时已经附带了几个开源字体:

  • Noto Sans Mono CJK SC
  • Noto Serif CJK SC
  • Noto Sans CJK SC
  • Source Han Serif SC
  • Source Han Mono SC

下面是指定字体后画出来的效果:

8dd11cb45bab0b9cff9479f755266942.png

可以看到图上的中文已经能正常显示了。


这一篇就到这里啦。欢迎大家点赞、转发、私信。还没有关注我的朋友可以关注 江达小记

江达小记