根据给定的《三国演义》或者其他的文本,将词频为前15的词语打印输出,并通过词云的方式展示出来
时间: 2024-05-11 10:15:51 浏览: 53
好的,你的要求我已经记录下来了。请给我提供需要统计词频的文本。
以《三国演义》为例,以下是程序实现的代码:
```python
import jieba
from collections import Counter
from wordcloud import WordCloud
import matplotlib.pyplot as plt
# 读取文本文件
text_file = open('sgyy.txt', 'r', encoding='utf-8')
text = text_file.read()
# 分词
words = jieba.cut(text)
# 统计词频
word_count = Counter(words)
# 找出词频前15的词语
top15 = dict(word_count.most_common(15))
# 打印输出
print('词频前15的词语:')
for word, count in top15.items():
print(word, count)
# 生成词云
word_cloud = WordCloud(font_path='msyh.ttc', background_color='white')
word_cloud.generate_from_frequencies(top15)
plt.imshow(word_cloud, interpolation='bilinear')
plt.axis('off')
plt.show()
```
你可以尝试运行这个程序并观察结果。
当然,如果你有其他需要统计词频的文本,也可以将它替换到 `text_file` 的位置,例如:
```python
text_file = open('your_text_file.txt', 'r', encoding='utf-8')
```
阅读全文