wordcloud 库的使用

准备

  • conda install wordcloud jieba Pillow numpy imageio
  • 说明:由于scipy库不在提供imread等函数, 使用imageioPillow 进行替代,jieba库用于中文的分词

用法

使用imageio进行图像处理
import wordcloud
import jieba
from PIL import Image
import imageio

mask = imageio.imread(r'./five.png')
with open(r"./报告.txt", "r+", encoding="utf-8") as f:
    txt = f.read()
w = wordcloud.WordCloud(font_path='STXINGKA.TTF', background_color='white',
                        mask=mask, width=1000, height=700, max_words=20,scale=3)
w.generate(' '.join(jieba.lcut(txt)))
w.to_file("cloud.png")
  • 说明:
    • font_path是字体路径,windows的字体存放在C:\Windows\Fonts,如何获取参看连接windows中获取字体文件名,对于路径为C:\Windows\Fonts的字体只需写字体文件名,其他路径需要全写
    • scale用于提高生成词云的图片质量, 值越高图片越清晰,不要设置太高,不然耗费时间较长
使用Pillow进行图像处理
import wordcloud
import jieba
from PIL import Image
import numpy as np

mask = np.asarray(Image.open(r'./five.png'))
with open(r"./报告.txt", "r+", encoding="utf-8") as f:
    txt = f.read()
w = wordcloud.WordCloud(font_path='STXINGKA.TTF', background_color='white',
                        mask=mask, width=1000, height=700, max_words=20,scale=3)
w.generate(' '.join(jieba.lcut(txt)))
w.to_file("cloud.png")
  • 说明:
    • 由于wordcloud.WordCloud中的参数 mask 需要的是 nd-array 类型,所以需要通过numpyPillow读取的图像类型进行转换
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章