将python NLTK解析树保存到图像文件

将python NLTK解析树保存到图像文件,python,parsing,tree,nlp,nltk,Python,Parsing,Tree,Nlp,Nltk,这可能会复制此堆栈溢出。然而,我面临着一个不同的问题。这是我的工作代码 import nltk from textblob import TextBlob with open('test.txt', 'rU') as ins: array = [] for line in ins: array.append(line) for i in array: wiki = TextBlob(i) a=wiki.tags sentence = a

这可能会复制此堆栈溢出。然而,我面临着一个不同的问题。这是我的工作代码

import nltk 
from textblob import TextBlob
with open('test.txt', 'rU') as ins:
    array = []
    for line in ins:
        array.append(line)
for i in array:
    wiki = TextBlob(i)
    a=wiki.tags
    sentence = a
    pattern = """NP: {<DT>?<JJ>*<NN>}
    VBD: {<VBD>}
    IN: {<IN>}"""
    NPChunker = nltk.RegexpParser(pattern)
    result = NPChunker.parse(sentence)

    result.draw()
导入nltk
从textblob导入textblob
以open('test.txt','rU')作为ins:
数组=[]
对于行输入ins:
array.append(行)
对于数组中的i:
wiki=TextBlob(i)
a=wiki.tags
句子=a
模式=“NP:{?*}
VBD:{}
在:{}
NPChunker=nltk.RegexpParser(模式)
result=NPChunker.parse(句子)
结果.draw()
这将为所有句子逐个生成解析树。实际上,在我的“test.txt”中,我有100多个句子。因此,手动将每个文件保存到.ps文件中非常困难。如何修改代码以将这些树保存到带有标签的单个.ps或.png文件(如:1.png、2.png…),这意味着我需要获取多个图像文件。
提前感谢。

虽然这是一个重复的问题,但这里有一个更简单的答案

给定
结果
树对象:

>>> import nltk
>>> from nltk import pos_tag
>>> pattern = """NP: {<DT>?<JJ>*<NN>}
... VBD: {<VBD>}
... IN: {<IN>}"""
>>> NPChunker = nltk.RegexpParser(pattern)
>>> sentence = 'criminal lawyer new york'.split()
>>> pos_tag(sentence)
[('criminal', 'JJ'), ('lawyer', 'NN'), ('new', 'JJ'), ('york', 'NN')]
>>> result = NPChunker.parse(pos_tag(sentence))
>>> result
Tree('S', [Tree('NP', [('criminal', 'JJ'), ('lawyer', 'NN')]), Tree('NP', [('new', 'JJ'), ('york', 'NN')])])

然后您将看到当前目录中出现
树.ps
文件。

结果.save('something.svg)
?无alvas。我得到了这个-
AttributeError:“Tree”对象没有属性“save”
它完成了这个技巧。。。但它仍然只生成一个图像。(实际上,它是文件最后一句的全部循环)我需要用不同的名称为每个句子生成多个图像。我怎样才能改变它?我试了很多方法。还在挣扎中。@miller尝试一个for循环
>>> from nltk.draw.tree import TreeView
>>> TreeView(result)._cframe.print_to_file('tree.ps')