pycallgraph与pycharm不起作用

时间:2013-12-02 16:51:33

标签: python pycharm

我正在使用mac os x并尝试设置pycallgraph 我用pip安装了pycallgraph,用自制软件安装了graphviz 一切都是从shell开始的。 但不是来自pycharm。

from pycallgraph import PyCallGraph
from pycallgraph import Config
from pycallgraph import GlobbingFilter
from pycallgraph.output import GraphvizOutput


config = Config()
config.trace_filter = GlobbingFilter(exclude=[
     'pycallgraph.*',
])

graphviz = GraphvizOutput(output_file='filter_exclude.png')

with PyCallGraph(output=graphviz, config=config):
    def my_fun(): 
        print "HELLO"
    my_fun()

/Users/user/Projects/py27/bin/python /Users/user/Projects/py27_django/test2.py
Traceback (most recent call last):
  File "/Users/user/Projects/py27_django/test2.py", line 15, in <module>
    with PyCallGraph(output=graphviz, config=config):
  File "/Users/user/Projects/py27/lib/python2.7/site-packages/pycallgraph/pycallgraph.py", line 32, in __init__
    self.reset()
  File "/Users/user/Projects/py27/lib/python2.7/site-packages/pycallgraph/pycallgraph.py", line 53, in reset
    self.prepare_output(output)
  File "/Users/user/Projects/py27/lib/python2.7/site-packages/pycallgraph/pycallgraph.py", line 97, in prepare_output
    output.sanity_check()
  File "/Users/user/Projects/py27/lib/python2.7/site-packages/pycallgraph/output/graphviz.py", line 63, in sanity_check
    self.ensure_binary(self.tool)
  File "/Users/user/Projects/py27/lib/python2.7/site-packages/pycallgraph/output/output.py", line 96, in ensure_binary
    'The command "{}" is required to be in your path.'.format(cmd))
pycallgraph.exceptions.PyCallGraphException: The command "dot" is required to be in your path.

Process finished with exit code 1

下面:
/Users/user/Projects/py27/ - &gt; virtualenv目录 /Users/user/Projects/py27_django/ - &gt;项目目录


它对我有什么要求?

4 个答案:

答案 0 :(得分:24)

使用以下方法在MacOS中安装 graphviz

brew install graphviz

然后您可以使用以下方法测试

dot -v

您也可以从here

下载pkg

答案 1 :(得分:8)

答案是:

在菜单栏中:
Pycharm - &gt; Run - &gt; Edit Configurations...

在对话框中:
对于选定的.py文件或默认值/ Python:

环境领域组:

Environment variables&gt; ... - &gt; + - &gt;
添加条目:
姓名:PATH
价值:/usr/local/bin

应该选择

Include print environment variables

答案 2 :(得分:0)

FWIW,这是其他两个用户在PyCharm的bugtracker中提交的一个问题:https://youtrack.jetbrains.com/issue/PY-17816

如果开发者在那里发表评论,我会更新这篇文章。

[更新] 2016年9月22日,Pycharm开发人员提供了Early Access版本的修复程序。 https://blog.jetbrains.com/pycharm/2016/09/pycharm-2016-3-eap-is-available-with-initial-support-for-python-3-6/,但这似乎还没有解决问题。

答案 3 :(得分:0)

这个过程适用于我的环境;编译后我得到了同样的“点”错误。不幸的是,我正在寻找代码的可视化表示,它显示继承、函数调用,更像是流程图。在 UP-and-UP 上,我了解分析器的作用,这个分析器效果很好!

  • Pycharm:2020.3.3
  • Python 3.8
  • PyCallGraph3
  • Pycharm 中的 Venv 环境

让它在 Windows 10 上的 PyCharm 中工作:

  1. 在你的解释器下安装包:pycallgraph3 文件 > 设置 > 项目 > Python 解释器

  2. 安装名为 GraphViz (https://graphviz.org/) 的程序

  3. 在您的运行/调试配置下,转到环境变量:

  4. 在大量列表的末尾粘贴以下行

    ;C:\Program Files\Graphviz\bin;

在这里之后,我没有测试它的有效性,但是如果它不起作用,我还是做了它,尝试将它添加到您的 Windows 路径中。

  1. 在 Windows 下: 系统属性 > 环境变量

  2. 对于用户窗口(顶部) 编辑 > 路径 > 新 > 添加条目:C:\Program Files\Graphviz\bin\

  3. 对于系统变量窗口(底部): 编辑 > 路径 > 新建 > 添加一个新条目:C:\Program Files\Graphviz\bin\