python 做词云图

#导入需要模块
import jieba
import numpy as np 
import matplotlib.pyplot as plt 
from PIL import Image 
from wordcloud import WordCloud, STOPWORDS, ImageColorGenerator
 
text_road=str(input('请输入文章的路径:'))
picture_road=str(input('请输入图片的路径:'))
 
#加载需要分析的文章
text = open(text_road,'r',encoding='utf-8').read()
 
#对文章进行分词
wordlist_after_jieba = jieba.cut(text, cut_all=False)
wl_space_split = " ".join(wordlist_after_jieba)
 
#读取照片通过numpy.array函数将照片等结构数据转化为np-array
mask=np.array(Image.open(picture_road))
 
#选择屏蔽词,不显示在词云里面
stopwords = set(STOPWORDS)
#可以加多个屏蔽词
stopwords.add("<br/>")
 
#创建词云对象
wc = WordCloud(
    background_color="white",
    font_path='/Library/Fonts/Arial Unicode.ttf',
    max_words=1000, # 最多显示词数
    mask=mask, 
    stopwords=stopwords,
    max_font_size=100 # 字体最大值
    )
 
#生成词云
wc.generate(text)
 
#从背景图建立颜色方案
image_colors =ImageColorGenerator(mask) 
 
#将词云颜色设置为背景图方案
wc.recolor(color_func=image_colors) 
 
#显示词云
plt.imshow(wc,interpolation='bilinear')
 
#关闭坐标轴
plt.axis("off")
 
#显示图像
plt.show()
 
#保存词云
wc.to_file('词云图.png')

#导入需要模块import jiebaimport numpy as np import matplotlib.pyplot as plt from PIL import Image from wordcloud import WordCloud, STOPWORDS, ImageColorGenerator text_road=str(input('请输入文章的路径:'))picture_road=str(input('请输入图片的路径:')) #加载需要分析的文章text = open(text_road,'r',encoding='utf-8').read() #对文章进行分词wordlist_after_jieba = jieba.cut(text, cut_all=False)wl_space_split = " ".join(wordlist_after_jieba) #读取照片通过numpy.array函数将照片等结构数据转化为np-arraymask=np.array(Image.open(picture_road)) #选择屏蔽词,不显示在词云里面stopwords = set(STOPWORDS)#可以加多个屏蔽词stopwords.add("<br/>") #创建词云对象wc = WordCloud(    background_color="white",    font_path='/Library/Fonts/Arial Unicode.ttf',    max_words=1000, # 最多显示词数    mask=mask,     stopwords=stopwords,    max_font_size=100 # 字体最大值    ) #生成词云wc.generate(text) #从背景图建立颜色方案image_colors =ImageColorGenerator(mask)  #将词云颜色设置为背景图方案wc.recolor(color_func=image_colors)  #显示词云plt.imshow(wc,interpolation='bilinear') #关闭坐标轴plt.axis("off") #显示图像plt.show() #保存词云wc.to_file('词云图.png')

猜你喜欢

转载自www.cnblogs.com/yc3110/p/12076619.html