Я скопировал пример с их собственного сайта, но я не знаю, как заставить его работать.

Ссылка на их пример

Это мой код:

from pycallgraph import PyCallGraph
from pycallgraph.output import GraphvizOutput


class Banana:

    def eat(self):
        pass

class Person:

    def __init__(self):
        self.no_bananas()

    def no_bananas(self):
        self.bananas = []

    def add_banana(self, banana):
        self.bananas.append(banana)

    def eat_bananas(self):
        [banana.eat() for banana in self.bananas]
        self.no_bananas()


def main():
    graphviz = GraphvizOutput()
    graphviz.output_file = 'basic.png'

    with PyCallGraph(output=graphviz):
        person = Person()
        for a in xrange(10):
            person.add_banana(Banana())
        person.eat_bananas()

if __name__ == '__main__':
    main()

И это ошибка, которую я получаю при попытке ее скомпилировать:

  File "test_pycallgraph.py", line 43, in <module>
    main()
  File "test_pycallgraph.py", line 35, in main
    with PyCallGraph(output=graphviz):

    'The command "{}" is required to be in your path.'.format(cmd))
pycallgraph.exceptions.PyCallGraphException: The command "dot" is required to be in your path.
1
KnakworstKoning 14 Мар 2018 в 12:13

2 ответа

Лучший ответ

Кажется, что библиотека, которую вы хотите использовать, выполняет внутренний вызов команды dot. Но поскольку dot отсутствует в вашем PATH, библиотека не может найти исполняемый файл dot и вызывает исключение.

Скорее всего, вам нужно установить dot, который является инструментом командной строки для рисования ориентированных графов. Убедитесь, что он установлен.

Если он у вас уже установлен, убедитесь, что вы добавили его местоположение в свой PATH. См. этот ответ о переполнении стека для получения дополнительной информации об изменении вашего PATH.

1
ndmeiri 14 Мар 2018 в 09:23

Предыдущий ответ был слишком расплывчатым. Вам нужно найти dot.exe, который для меня был в C: \ Program Files (x86) \ Graphviz2.38 \ bin, поэтому я перешел к следующему: панель управления> система> дополнительные параметры системы> переменные среды ... и затем в нижнем поле «Системные переменные» найдите «Путь», выберите его и выберите «Редактировать», затем выберите «Новый» и вставьте путь. Теперь закройте и снова откройте cmd.exe, увидите простой текст «точка» и нажмите «Ввод». Если ошибки нет, путь был настроен правильно.

0
Kevin S 11 Май 2018 в 17:32