Python3汤姆索亚历险记词云制作之尝试

文章目录

  • 导入模块
  • 准备工作
  • 代码主体
  • 图片对比
  • 代码总汇
  • wordcloud.WordCloud()部分参数概述

导入模块

import wordcloud
import imageio
import jieba

包含第三方模块:wordcloud,imageio,jieba

准备工作

'''读取图片。'''
open_photo = imageio.imread('resource/u=2576802456,616754819&fm=26&gp=0.jpg')

'''获取文本内容'''
f = open('resource/129224.txt',encoding='utf-8')
text = f.read()
f.close()


'''使用jieba模块进行精确分词。'''
text_list = jieba.lcut(text)
#	分词后形成一个列表,可以使用join方法进行连接。
test_object = ' '.join(text_list)

代码主体

'''创建WordCloud对象。'''
wc = wordcloud.WordCloud(
	#	背景颜色设置。
	background_color = (255,255,255),
	#	使用字体路径。
	font_path = 'resource/HuaWenYuanTi-Light-2.ttf',
	#	使用图片中的描述区域所构成的形状,来确定词云的具体形状。
	mask = open_photo,
	#	画布长宽的放大比例。
	scale=10,
	#	颜色设置模式。
	mode='RGB',
	#	设置水平词语占比。
	prefer_horizontal=0.8
		)

'''将文本传入WordCloud对象。'''
wc.generate(test_object)

'''使用图片确定文本颜色。'''
text_color = wordcloud.ImageColorGenerator(open_photo)
#	提取图片颜色进行词的颜色的选择。
wc_recolor = wc.recolor(color_func=text_color)

'''保存图片至指定路径。'''
wc_recolor.to_file('cloud.png')

图片对比

原图
Python3汤姆索亚历险记词云制作之尝试_第1张图片
生成图

代码总汇

import wordcloud
import imageio
import jieba


'''读取图片。'''
open_photo = imageio.imread('resource/u=2576802456,616754819&fm=26&gp=0.jpg')

'''获取文本内容'''
f = open('resource/129224.txt',encoding='utf-8')
text = f.read()
f.close()


'''使用jieba模块进行精确分词。'''
text_list = jieba.lcut(text)
#	分词后形成一个列表,可以使用join方法进行连接。
test_object = ' '.join(text_list)


'''创建WordCloud对象。'''
wc = wordcloud.WordCloud(
	#	背景颜色设置。
	background_color = (255,255,255),
	#	使用字体的路径,当词云中含有中文时应该设置字体,该类默认不支持中文。
	font_path = 'resource/HuaWenYuanTi-Light-2.ttf',
	#	使用图片中的描述区域所构成的形状,来确定词云的具体形状。
	mask = open_photo,
	#	画布长宽的放大比例,默认值为1。
	scale=10,
	#	颜色设置模式。
	mode='RGB',
	#	设置水平词语占比。
	prefer_horizontal=0.8
		)

'''将文本传入WordCloud对象。'''
wc.generate(test_object)

'''使用图片确定文本颜色。'''
text_color = wordcloud.ImageColorGenerator(open_photo)
#	提取图片颜色进行词的颜色的选择。
wc_recolor = wc.recolor(color_func=text_color)

'''保存图片至指定路径。'''
wc_recolor.to_file('cloud.png')

wordcloud.WordCloud()部分参数概述

参数 概述
width 指定画布的宽度,默认值为200,其权重值小于该类的scale参数
height 指定画布的高度,默认值为200,其权重值小于该类的scale参数
min_font_size 显示的最小字体大小,默认值为4
max_font_size 显示的最大字体大小,默认值为None
max_words 词的最大显示个数,默认值为200
stop_words 设置需要屏蔽的词

你可能感兴趣的:(Python3大数据,python)