长文本关键词提取后,进行可视化,Python完整代码示例,直接写代码
时间: 2023-12-27 14:02:25 浏览: 43
以下是一个基于Python的长文本关键词提取和可视化的完整代码示例:
```python
import jieba
import jieba.analyse
from wordcloud import WordCloud
import matplotlib.pyplot as plt
# 读取文本文件
with open('example.txt', 'r', encoding='utf-8') as f:
text = f.read()
# 使用jieba进行分词和关键词提取
keywords = jieba.analyse.extract_tags(text, topK=50, withWeight=True, allowPOS=('n', 'nr', 'ns'))
# 将关键词和权重分别存储到两个列表中
words = []
weights = []
for keyword, weight in keywords:
words.append(keyword)
weights.append(weight)
# 使用WordCloud生成词云图
wordcloud = WordCloud(font_path='simhei.ttf', background_color='white', width=800, height=600)
wordcloud = wordcloud.fit_words(dict(zip(words, weights)))
plt.imshow(wordcloud)
plt.axis("off")
plt.show()
```
代码解释:
1. 第1行导入了jieba库和jieba的关键词提取模块,以及wordcloud库和matplotlib.pyplot库。
2. 第4-6行读取了文本文件example.txt中的内容。
3. 第9行使用jieba的extract_tags方法提取出前50个名词、人名和地名作为关键词,并返回关键词及其权重。
4. 第12-16行将关键词和权重分别存储到两个列表中。
5. 第19-22行使用WordCloud生成词云图,其中font_path参数指定了字体文件路径,background_color参数指定了背景色为白色,width和height参数指定了词云图的大小。
6. 最后使用matplotlib.pyplot的imshow和show方法显示生成的词云图。