Сохранение результата функции печати в виде рисунка - PullRequest
0 голосов
/ 17 октября 2018

Я использую Stanford coreNLP для генерации дерева зависимостей, но не могу сохранить результат, так как он использует функцию печати для отображения дерева.Например, код и дерево зависимостей для «Я задаю вопрос в StackOverFlow» будет выглядеть следующим образом:

nlp = StanfordCoreNLP('.')
parser=nlp.parse("I ask a question in StackOverFlow") 
tree=Tree.fromstring(parser.__str__()) 
tree.pretty_print()

enter image description here

Здесь я использовалИнструмент Snipping для снятия скриншота сгенерированного дерева вручную, но в моем коде я сгенерирую более тысячи деревьев, что невозможно сделать скриншоты из всех них.Буду признателен за любую помощь.

1 Ответ

0 голосов
/ 17 октября 2018

В системе на основе UNIX вы можете сделать:

parse.py

nlp = StanfordCoreNLP('.')
for i in range(len(sentences)):
    sentence = sentences[i]
    parser=nlp.parse(sentence) 
    tree=Tree.fromstring(parser.__str__())
    print(i, sentence)
    print('parse tree:')
    tree.pretty_print()
    print()

и сделать что-то вроде python parse.py > parse_trees, и ваш выходной файл parse_trees будет структурирован как:

[index] [sentence]
parse tree:
[parse tree]

[index] [sentence]
parse tree:
[parse tree]

...
...