只用jieba 和wordcloud库制作异型图
时间: 2023-10-15 07:03:58 浏览: 81
好的,请看以下代码示例:
```python
import jieba
from wordcloud import WordCloud, ImageColorGenerator
import numpy as np
from PIL import Image
# 读取文本文件
text = open('your_text_file.txt', 'r').read()
# 读取图像文件
mask = np.array(Image.open('your_image_file.png'))
# 使用jieba进行分词
word_list = jieba.cut(text)
# 设置停用词
stopwords = {'的', '了', '和', '是', '在', '有', '人', '就', '不', '也', '都', '这', '我', '你', '他', '她', '我们', '你们', '他们', '她们'}
# 将分词结果按空格连接成字符串
words = ' '.join([word for word in word_list if word not in stopwords])
# 设置WordCloud对象
wc = WordCloud(background_color="white", max_words=2000, mask=mask, contour_width=3, contour_color='steelblue')
# 生成词云图
wc.generate(words)
# 提取图像颜色
image_colors = ImageColorGenerator(mask)
# 显示词云图
import matplotlib.pyplot as plt
plt.imshow(wc.recolor(color_func=image_colors), interpolation="bilinear")
plt.axis('off')
plt.show()
```
上述代码中,我们使用jieba库进行中文分词,将分词结果按空格连接成字符串,然后使用WordCloud库生成异型词云图。由于没有设置stopwords,所以分词结果中会包含常用词汇,需要根据实际情况自行添加停用词。
阅读全文