InvocationException: GraphViz’s executables not found
这是个决策树可视化的老错误了,网上的解决方案有很多,但是我觉得他们不够暴力直接,我提出一个暴力的方法。
1.读错误
很好他啥也没说就是说自己找不到,好好好,我帮你找
2.锁定报错位置
我们可以找到这个位置,然后可以看到这个报错就是这里出来的。(如果是集成开发环境的话可以直接跳转过来,如果是Jupyter的话我们就从报错目录打开就完事了。)
3.读代码逻辑
看上面的代码,大约就是我们需要find_graphviz()来找到这个东西,但是他并没找到,所以怎么办兄弟们?直接取这个find_graphviz()(vscode下直接ctrl+鼠标点击)
好了我们顺利找到这个东西了,大约就是这个东西实现一个动态适应你的安装目录之后读进来:
读一下这个东西的逻辑:就是各种方法找出来目录,然后读出来返回,如果都失败了,就返回一个None。
那么我们这个错误肯定就是这些方法都是废物方法,没有完成目标。我自己写一个不就完了。
4.改他的代码
我直接自己写死一个方法就是了。
path='D:\anaconda\Graphviz\bin'#这里是我自己修改的,加入我自己的安装目录
progs = __find_executables(path)
if progs is not None:
return progs
5.思考逻辑上有没有问题
我们应该从几个方面思考这个问题:
5.1如果前面的内容可以顺利自己工作
那很好,直接就没有经过我加入的代码。根本也就没啥影响
5.2如果前面的工作不了,我这个可以工作
那我这个不就解决问题了吗?
5.3如果前面和我这个都不工作
虽然没有效果,但是本身应该返回一个None,我这里还是返回None。
6.生效问题
如果是使用jupyter的话需要重启来生效: