Python生成词云-数据可视化

准备工作:安装3个Python库

pip install numpy
pip install matplotlib
pip install jieba

代码

# worcloud是生成词云的关键
import wordcloud
# numpy是一个强大的科学计算库,我们将用它来把PIL库打开的图片保存为数组
import numpy as np
# PIL是一个图像处理库,用来打开图片
from PIL import Image
# jieba是中文分词库,可以智能地拆分词语
import jieba
# matplotlib库是一个绘图库,可以用来显示图片以及绘制多种图形
import matplotlib.pyplot as plt

# 生成背景图片的两种方法#
# 注意背景图片的路径要写对,可以是完整路径,例如C:/image/test.jpg
# 若图片与Python代码在同一个文件夹,那可以直接写图片名称+后缀,例如test.jpg
# 1.使用 matplotlib库读取图片
bg_1=plt.imread("background_image_1.jpg")

# 2.使用numpy库和PIL库,PIL库用于打开图片,numpy库用于将图片转化为数组
# 下面这行代码我注释掉了
# bg_2=np.array(Image.open('background_image_2.jpg'))

# 对于以上的图片选择,要特别注意图片的背景应该为白色


#配置词云的背景,图片,字体大小等参数,
# 也可以不配置,直接 wc=wordcloud.WordCloud()
wc=wordcloud.WordCloud(
	# font_path为字体文件的路径,如果没有这个,那么生成的词云图片无法显示中文
	font_path="C:/Windows/Fonts/simfang.ttf",

	# scale为按比例放大或者缩小生成的图片。例如1.5表示图片放大为原来的1.5倍,可省略
	scale=1.5,

	# mask表示背景图片,如果不没有背景图片,那这个可以省略
	mask=bg_1,

	# background_color为背景颜色,默认为黑色,可以省略
	background_color="black",

	# width为词云生成的图片宽度,默认为400
	width=600,

	# height为词云生成的图片高度,默认为200
	height=400,

	# max_words图片上显示的最大词语的个数
	max_words=1000,

	# max_font_size为最大字体的大小
	max_font_size=120,

	# min_font_size为最小字体大小,默认为4
	min_font_size=4)

# 打开要生成词云的文件,一般是txt格式的纯文本文档
with open('词云来源.txt','r',encoding="utf-8") as f:

	# text=f.read()是说读取词云来源.txt 这个文件的所有内容并存储到变量text中
	text=f.read()

	# 利用jieba库把text拆分并且使用空格分隔拆分后的结果
	spilt_text=" ".join(jieba.lcut(text))

print("正在生成词云,预计时间35s......")

# 调用generate方法,传入要生成词云的文本

wc.generate(spilt_text)

# 把词云保存成图片
wc.to_file('wordcloud.jpg')

print("生成完毕!")

背景图片
在这里插入图片描述

效果图片
在这里插入图片描述

THE END
  • 0
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值