欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

python使用wordcloud创建词云

程序员文章站 2022-03-26 10:49:08
最近对词云比较感兴趣,所以简单学习了一下,希望这篇文章能对同样想要学习词云的朋友有所帮助。本文用的是python实现词云的创建,当然也可以用词云生成器来生成。 模块安装 这里需...

最近对词云比较感兴趣,所以简单学习了一下,希望这篇文章能对同样想要学习词云的朋友有所帮助。本文用的是python实现词云的创建,当然也可以用词云生成器来生成。

模块安装

这里需要用到的模块有:wordcloud ,jieba,PIL,numpy,matplotlib

我电脑已安装pip工具:pip install ‘xxx’

工程介绍

我这里的测试文件是:text.txt 里边存放的内容为百度百科对于苹果公司的介绍。

背景图片为苹果创始人乔布斯:
python使用wordcloud创建词云

字体可自己上网下载 .ttf 格式。我的字体的下载地址为:https://font.chinaz.com/zhongwenziti.html

源码">源码

下面附上源码,有注释:

#!/user/local/bin/python2.7
# -*- coding:utf-8 -*-
#导入所需要用到的工具包
import matplotlib.pyplot as plt
from wordcloud import WordCloud,ImageColorGenerator,STOPWORDS
import jieba
import numpy as np
from PIL import Image
#此处文件路径我用的是绝对路径
img = np.array(Image.open('C:/Users/ASUS1/Desktop/wordcloud/jobs.jpg'))

text_from_file = open('C:/Users/ASUS1/Desktop/wordcloud/text.txt').read()

#通过jieba分词进行分词并通过空格分割
Word_spilt_jieba = jieba.cut(text_from_file,cut_all = True)
word_space = ' '.join(Word_spilt_jieba)

#配置Wordcloud参数
my_wordcloud = WordCloud(
    background_color='white', #设置背景颜色
    mask=img,  #背景图片
    max_words = 200, #设置最大显示的词数
    stopwords = STOPWORDS, #设置停用词
    #设置字体格式,字体格式 .ttf文件需自己网上下载,最好将名字改为英文,中文名路径加载会出现问题。
    font_path = 'C:/Users/ASUS1/Desktop/wordcloud/simkai.ttf', 
    max_font_size = 100, #设置字体最大值
    random_state=50, #设置随机生成状态,即多少种配色方案
    ).generate(word_space)

#根据图片生成词云颜色
iamge_colors = ImageColorGenerator(img)
#my_wordcloud.recolor(color_func = iamge_colors)

#显示生成的词云图片
plt.imshow(my_wordcloud)
plt.axis('off')
plt.show()

#保存生成的图片,当关闭图片时才会生效,中断程序不会保存
my_wordcloud.to_file('C:/Users/ASUS1/Desktop/wordcloud/dream.jpg')
结果:dream.jpg

python使用wordcloud创建词云