from sklearn.tree import export_graphviz from IPython.display import Image import pydotplus from sklearn.externals.six import StringIO # 绘制决策树 dot_data = StringIO() export_graphviz( decision_tree, out_file=dot_data, feature_names=predictors, class_names=['Unsurvived','Survived'], # filled=True, rounded=True, special_characters=True ) # 决策树展现 graph = pydotplus.graph_from_dot_data(dot_data.getvalue()) Image(graph.create_png()) 优化这段代码
时间: 2023-07-16 20:12:56 浏览: 163
在使用 `sklearn.tree.export_graphviz()` 函数时,你可以通过设置 `filled` 和 `rounded` 参数来控制决策树的样式,同时也可以通过 `special_characters` 参数来控制是否展示特殊字符。
另外,由于 `sklearn.externals.six` 已经被弃用,建议使用 `six` 库的新位置(`from six import StringIO`)。
因此,优化后的代码如下所示:
```python
from sklearn.tree import export_graphviz
from IPython.display import Image
import pydotplus
from six import StringIO
# 绘制决策树
dot_data = StringIO()
export_graphviz(
decision_tree,
out_file=dot_data,
feature_names=predictors,
class_names=['Unsurvived', 'Survived'],
filled=True,
rounded=True,
special_characters=True
)
# 决策树展现
graph = pydotplus.graph_from_dot_data(dot_data.getvalue())
Image(graph.create_png())
```
注意:如果你使用的是 Python 3.7 及以上版本,需要先安装 `pydotplus` 和 `graphviz` 库。可以使用以下命令进行安装:
```shell
pip install pydotplus
pip install graphviz
```
阅读全文