截取某个小说片段,做词云和图片词云,分别保存为图片。
时间: 2024-02-24 10:53:18 浏览: 165
好的,我可以为您提供一些代码来实现您的需求。
首先,您需要选择一本小说,将其复制到一个文本文件中。接下来,您需要安装一些 Python 库,包括 `jieba`、`wordcloud` 和 `PIL`。您可以使用以下命令来安装它们:
```
pip install jieba wordcloud Pillow
```
然后,您可以使用以下代码来生成词云和图片词云:
```python
import jieba
from wordcloud import WordCloud, ImageColorGenerator
from PIL import Image
# 读取文本文件
with open('novel.txt', 'r', encoding='utf-8') as f:
text = f.read()
# 使用 jieba 分词
words = jieba.cut(text)
# 将分词结果转换为空格分隔的字符串
word_str = ' '.join(words)
# 生成词云
wc = WordCloud(font_path='msyh.ttc', background_color='white').generate(word_str)
# 保存词云图片
wc.to_file('wordcloud.png')
# 读取背景图片
bg_img = Image.open('background.png')
# 生成图片词云
img_wc = WordCloud(font_path='msyh.ttc', background_color=None, mode='RGBA', mask=bg_img).generate(word_str)
# 从背景图片中获取颜色
image_colors = ImageColorGenerator(bg_img)
# 将词云颜色设置为背景图片的颜色
img_wc.recolor(color_func=image_colors)
# 保存图片词云
img_wc.to_file('image_wordcloud.png')
```
在上面的代码中,`novel.txt` 是您选择的小说文本文件,`msyh.ttc` 是用于生成词云的字体文件,`background.png` 是用于生成图片词云的背景图片文件,`wordcloud.png` 和 `image_wordcloud.png` 是保存词云和图片词云的文件名。
您可以根据您的需要修改代码中的一些参数,例如字体文件、背景颜色和词云形状。
阅读全文