用python显示水浒传主要人物的出场频次,以词云形式显示
时间: 2024-02-28 22:09:10 浏览: 147
好的,我可以为您提供一些帮助。首先,我们需要准备水浒传的文本数据。您可以在网上找到水浒传的电子版文本,将其保存到一个文本文件中。接下来,我们可以使用Python中的jieba库进行分词,并统计每个人物的出现频次。最后,我们可以使用wordcloud库生成词云图。
下面是一个简单的示例代码:
```python
import jieba
from collections import defaultdict
from wordcloud import WordCloud
import matplotlib.pyplot as plt
# 读取文本文件
with open('shuihuzhuan.txt', 'r', encoding='utf-8') as f:
text = f.read()
# 使用jieba进行分词
words = jieba.cut(text)
# 统计每个人物的出现频次
counts = defaultdict(int)
for word in words:
if len(word) == 1:
continue
counts[word] += 1
# 生成词云图
wordcloud = WordCloud(font_path='msyh.ttc', background_color='white', width=800, height=600)
wordcloud.generate_from_frequencies(counts)
plt.imshow(wordcloud)
plt.axis('off')
plt.show()
```
在上面的代码中,我们首先使用`jieba.cut`函数对文本进行分词,并使用`defaultdict`来统计每个人物的出现频次。然后,我们使用`WordCloud`类来生成词云图,并使用`matplotlib`库显示词云图。
请注意,上面的代码仅为示例代码,您需要根据自己的实际情况进行修改和优化。
阅读全文