python 词云手把手_手把手教你生成炫酷的词云

前言:

话说,在这个大数据时代,获取信息显得极为容易,可正是如此,我们想要对信息进行直观地了解难度就大了。Excel是一个很好的数据可视化方法,不过有时候我们的数据来源可能并不是一张或者多张Excel表格,这样子的话如果我们想利用Excel进行数据可视化就显得不是那么容易。

首先我们需要逐个将数据导入到Excel中,然后再用Excel的图表对数据进行可视化分析。在信息量大的情况下,这么做显然得不偿失,我们只是想对数据进行一个直观的了解,为什么要搞得这么复杂呢?

以上的问题是很多人会遇到的,因此一些数据可视化方式便应运而生,例如词云。大家看看这张图片

是不是非常直观并且炫酷呢?

现在,想做出这样子的图片的小伙伴们,跟着我,我手把手教你们做出这样子的词云,这里的实现方法是使用Python中的相关库

安装方法如下

pip install matplotlib

pip install numpy

pip install jieba

以上的三个命令的作用是分别安装:matplotlib,numpy以及jieba这三个库。当然有些同学可能已经安装过了。想要检验是否有安装,可以在命令行下输入:pip list

这样子即可显示你已经安装的库,如果没有全部出现上面的3个库,请在命令行下执行对应的命令并且等待安装成功。

如果你没有安装Python或者输入pip显示不是内部命令,请移步这篇文章https://zhuanlan.zhihu.com/p/157971955​zhuanlan.zhihu.com

现在直接上代码,代码上面有注释,相信你一定能看懂。注意:代码中的文件名要替换成你自己的文件的文件名哦!主要是图片文件和词云来源文件

# 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库读取图片

# background_image_1.jpg是背景图片的文件名,要替换为你自己的图片

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格式的纯文本文档

# 词云来源.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("正在生成词云......")

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

wc.generate(spilt_text)

# 把词云保存成图片

wc.to_file('wordcloud.jpg')

print("生成完毕!")

效果展示背景图片生成的词云图片

最后,这次的分享到此就结束了,大家赶紧去试试吧!有问题欢迎在评论区留言或者私信我哦,我会帮你解决问题的!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值