pyLDAvis .show 函数要求在 Jupyter 笔记本中缺少 .css 文件

问题描述

import pyLDAvis
import pyLDAvis.gensim
pyLDAvis.enable_notebook()
LDAvis_prepared = pyLDAvis.gensim.prepare(lda_model,bow_corpus,dictionary)
pyLDAvis.show(LDAvis_prepared)

这是一个非常简单的可视化,但是当我运行 show 命令时,弹出一个错误

FileNotFoundError                         Traceback (most recent call last)
<ipython-input-152-64a947f66dc2> in <module>
----> 1 pyLDAvis.show(LDAvis_prepared)

/opt/anaconda3/lib/python3.7/site-packages/pyLDAvis/_display.py in show(data,ip,port,n_retries,local,open_browser,http_server,**kwargs)
    262                  open(urls.LDAVIS_LOCAL,'r').read()],263                  '/LDAvis.css': ["text/css",--> 264                                  open(urls.LDAVIS_CSS_URL,265                  '/d3.js': ["text/javascript",266                             open(urls.D3_URL,'r').read()]}

FileNotFoundError: [Errno 2] No such file or directory: 'https://cdn.rawgit.com/bmabey/pyLDAvis/files/ldavis.v1.0.0.css'

不幸的是,我在网上搜索了有关此错误的信息。但是,如果我单击 .ccs 链接,我仍然可以查看此 css 文件
我什至将显示保存为 HTML 文件,但它是一个空白页面(由于某些原因未呈现内容

pyLDAvis.save_html(LDAvis_prepared,'sss.html')

解决方法

尝试指定pyLDAvis的版本为2.1.2

!pip install pyLDAvis==2.1.2

并使用 pyLDAvis.display() 而不是 pyLDAvis.show()

topic_data =  pyLDAvis.gensim.prepare(ldamodel,doc_term_matrix,dictionary,mds = 'pcoa',sort_topics=True)
pyLDAvis.display(topic_data)

这在我的机器上解决了同样的问题。