利用Python的词云第三方库Wordcloud,结合jieba的分词功能构建《三国演义》的词云效果。
时间: 2024-02-24 16:53:56 浏览: 117
好的,下面是利用Python的Wordcloud库和jieba库构建《三国演义》的词云效果的代码:
```python
import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt
# 读取《三国演义》文本
with open('sgyy.txt', 'r', encoding='utf-8') as f:
text = f.read()
# 利用jieba进行分词
words = jieba.lcut(text)
# 去除停用词
with open('stopwords.txt', 'r', encoding='utf-8') as f:
stopwords = f.read().split('\n')
words = [word for word in words if word not in stopwords]
# 词频统计
word_counts = {}
for word in words:
if len(word) == 1:
continue
word_counts[word] = word_counts.get(word, 0) + 1
# 生成词云
wc = WordCloud(
background_color='white', # 背景颜色
font_path='msyh.ttc', # 字体路径,需要指定中文字体
max_words=100, # 最大显示单词数
max_font_size=100, # 最大字体大小
width=800, height=600, # 画布大小
)
wc.generate_from_frequencies(word_counts)
# 显示词云
plt.imshow(wc, interpolation='bilinear')
plt.axis('off')
plt.show()
```
其中,代码中的`sgyy.txt`是《三国演义》文本文件,`stopwords.txt`是停用词文件,需要根据实际情况进行替换。
执行以上代码后,就可以得到《三国演义》的词云效果图。
阅读全文