利用背景图片生成词云

本文主要对爬取数据的一些高频词采用词云生成进行可视化展示。

1 爬取csdn的文章 准备txt 和背景图片 建议颜色区分大点 需要的字体

2 安装jieba 和 wordcloud

3 编写代码

from wordcloud import WordCloud,ImageColorGenerator,STOPWORDS
import jieba
import matplotlib.pyplot as plt
from PIL import Image
import numpy as np 

#读取txt数据 我就爬了点csdn的内容
text = open('D://ciyun//a.txt','r', encoding='UTF-8').read()
#结巴分词,默认精确模式。可以添加自定义词典userdict.txt,然后jieba.load_userdict(file_name) ,file_name为文件类对象或自定义词典的路径  
# 自定义词典格式和默认词库dict.txt一样,一个词占一行:每一行分三部分:词语、词频(可省略)、词性(可省略),用空格隔开,顺序不可颠倒
cut_text = jieba.cut(text)
result = '/'.join(cut_text)
print(result)
#设置停用词
# stopwords = set(STOPWORDS)
# stopwords.add('他们')
# stopwords.add('一个')
#wordcloud = WordCloud(font_path = "C:\Windows\Fonts\STHUPO.ttf",background_color="white",width=1500,height=1000,margin=0).generate(result)
##可以通过font_path路径来设置字体集,background_color 为设置背景颜色,默认设置为黑色,mask设置背景图片
###自定义图片生成词云
image = Image.open(r'D://ciyun//b43.png')  
img = np.array(image) 
#词云的生成,字体的路径一定要写上不然会出现乱码 可以下载其他字体创新
wc = WordCloud(font_path = "C:\Windows\Fonts\STHUPO.ttf",background_color='white',max_font_size=150,mask=img) 
# WordCloud其他参数设置,random_state=42,max_words=2000,min_font_size=20
wc.generate(result)
#绘制文字的颜色以背景图颜色为参考  
image_color = ImageColorGenerator(img)
wc.recolor(color_func=image_color)  
# wc.to_file(r"D://ciyun/wordcloud1.png",dpi=3000)
#图片的展示 
plt.imshow(wc)
plt.axis("off")
# 像素点多少
plt.savefig("D://ciyun/wordcloud3.png",dpi=300)
# plt.show()

结果


  • 3
    点赞
  • 15
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值