问题描述:
因决策树可解释强,采用决策树来处理分类问题,在导出结果时,出现中文无法显示的问题(中文显示为框框)。这种情况是由于字体的原因导致的,解决方法如下:
1. 修改Graphviz配置文件
字体配置文件 fonts.conf 路径:C:\Program Files (x86)\Graphviz2.38\fonts
将 <dir>#FONTDIR#</dir> <dir>~/.fonts</dir> 更改为
<dir>C:/Windows/Fonts</dir> <dir>~/.fonts</dir>
2. 将决策树dot文件保存下来
查看保存在本地的 dot_data.dot 可发现,其默认字体 fontname=helvetica,只需将字体修改为支持的中文字体即可,通过正则表达式实现替换。
# dot_data.dot文件内容
digraph Tree {
node [shape=box, style="filled, rounded", color="black", fontname=helvetica] ;
edge [fontname=helvetica] ;
<