python 词云代码 复杂一点的
时间: 2023-07-23 12:35:51 浏览: 74
以下是一个稍微复杂一点的 Python 词云代码示例,使用的是第三方库 jieba、WordCloud、Pillow、numpy、matplotlib:
```python
import jieba
from wordcloud import WordCloud
from PIL import Image
import numpy as np
import matplotlib.pyplot as plt
# 读取文本文件
with open('text.txt', 'r', encoding='utf-8') as f:
text = f.read()
# 使用 jieba 分词
words = jieba.cut(text)
# 拼接分词结果为字符串
result = ' '.join(words)
# 读取背景图
mask = np.array(Image.open('background.png'))
# 生成词云
wc = WordCloud(background_color='white', mask=mask, font_path='font.ttf', max_words=200, max_font_size=100,
random_state=42, width=800, height=600, margin=2).generate(result)
# 显示词云
plt.imshow(wc, interpolation='bilinear')
plt.axis('off')
plt.show()
# 保存词云到文件
wc.to_file('wordcloud.png')
```
这段代码与前面的代码相比,增加了以下内容:
1. 读取并使用背景图作为词云的形状;
2. 使用指定的字体;
3. 限制词云的最大词数和最大字体大小;
4. 构造随机数生成器,使每次生成的词云都不同;
5. 将词云保存到文件中。
其中,`background.png` 是词云的背景图片,`font.ttf` 是词云使用的字体文件,可以根据实际情况进行修改。需要注意的是,使用中文字体时需确保字体文件存在,并且需要指定字体文件的路径。
阅读全文