【Python 词云】无聊的时候就来动手制作一个属于自己的词云吧

前言:
没接触Python就感觉词云还挺好玩的,所以现在刚学完词云制作就来和大家分享一波,英文词云制作比较简单,所以在这里直接分享中文词云制作方法,完整代码放在最后自取。
一、效果展示
【Python 词云】无聊的时候就来动手制作一个属于自己的词云吧_第1张图片

制作步骤
1.先导入我们所需要依赖的相关库

import jieba
import wordcloud
import matplotlib.pyplot as plt
import imageio

2.定义我们词云背景图片(颜色对比度越深越好,最好为纯色)

#背景图片可以自行上网上搜索
#可以使用绝对路径也可以使用相对路径,建议使用相对路径
mask = imageio.imread(r'#图片路径')

3.指定文本位置以及打法方式

#可以使用绝对路径也可以使用相对路径,建议使用相对路径
with open('文本位置','r',encoding='utf-8')as f:
    words = f.read()

4.对文本进行分词

#对中文进行分词,不然词云显示会变为一个个的句子。
string = words
#利用jieba库对指定文本进行分词
seg = jieba.cut(string,cut_all=False)
#对分词需求进行定义,根据需求进行自行调整。
word_list = [word for word in seg if len(word.strip())>1]
str = '.'.join(word_list)

5.对词云内字体大小、颜色、词数进行调整

#指定模板
wcloud = wordcloud.WordCloud(
    font_path='./zt.ttf', #字体路径
    background_color='white', #指定背景颜色
    max_words=500,   #词云显示最大词数
    max_font_size=150,  #指定最大字号
    mask = mask #背景图片
) 

6.生成并展示词云

wcloud = wcloud.generate(str)  #生成词云
plt.imshow(wcloud)
plt.savefig('eng-map.jpg')
plt.axis('off')
plt.show()

三、词云完整代码


# coding=gbk
import jieba
import wordcloud
import matplotlib.pyplot as plt
import imageio

mask = imageio.imread(r'./china.png')
with open('./zgg.txt','r',encoding='utf-8')as f:
    words = f.read()
string = words
seg = jieba.cut(string,cut_all=False)
word_list = [word for word in seg if len(word.strip())>1]
str = '.'.join(word_list)
wcloud = wordcloud.WordCloud(
    font_path='./zt.ttf', #字体路径
    background_color='white', #指定背景颜色
    max_words=500,   #词云显示最大词数
    max_font_size=150,  #指定最大字号
    mask = mask #背景图片
) #指定模板
wcloud = wcloud.generate(str)  #生成词云
#避免中文乱码
plt.imshow(wcloud)
plt.savefig('eng-map.jpg')
plt.axis('off')
plt.show()

你可能感兴趣的:(Python,python,中文分词)