我想让Spyder使用space的displacement visualizer来显示依赖关系图。
代码如下:
import spacy
nlp = spacy.load('en_core_web_sm')
from spacy import displacy
doc = nlp(u'This is a short text.')
displacy.render(doc, style='dep', options={'distance':110})
程序结束,不显示任何内容。
如果我加上jupyter=True,我得到这个:
<IPython.core.display.HTML object>
在我的例子中,在Spyder 5.1.2中运行您的代码将返回给我用于绘图的svg的字符串。
要在运行Spyder代码时可视化绘图,您需要使用displacy.serve
方法。这将运行一个为svg/plot提供服务的web服务器。您应该能够通过浏览器访问/查看它,通过转到http://localhost:5000/
。
通过查看源代码,您将注意到您可以使用渲染器方法set_render_wrapper
与HTML yield进行交互。阅读下面的文章,演示了如何将渲染分配给svg并保存它。(服务也是一个很好的解决方案,但这将有助于直接保存您的结果)使用DisplaCy将SpaCy渲染文件保存为SVG