经常做数据分析的人肯定不会对词云图感到陌生,尤其是近几年来非常流行,不管是发布会、行业报告还是新闻,都喜欢使用词云这种形式,将信息的关键词组成形象生动的图案,一下子就能抓住生人眼球,因为词云图这种可视化图表给人的第一印象就是足够装逼,足够亮眼!
罗振宇的跨年演讲中用到词云
但是词语云图的最大优点,其实并不是它的颜值,而是它能够能够直观地展示数据频率,对出现频率较高的关键词予以重点突出,从而过滤掉大量的文本信息,帮助我们进行数据分析。
而且,如果能够亲手做一个词云图,发到朋友圈里岂不是能够帅到没朋友?
网上有很多线上词云制作网站,但是基本上很难实现对数据的筛选和过滤,仅仅是有着好看的皮囊而已。对于数据分析人而言,还是要借助专业的分析工具,下面我就用Python和FineBI这两个常用的数据分析工具,分别实操一下如何制作炫酷又装逼的词云。
Pyhton
1、安装Python运行环境和套装
这个不必多说,推荐下载的套装是anaconda,做词云很好用。下载完毕后,配置好运营环境后,执行安装文件就行了。
2、准备数据
下面是我随便找了一篇英文文章,作为要进行词云制作的数据基础:
我把其中的正文文字部分拷贝了下来,存储为一个文本文件,叫做yes-minister.txt,把这个文件挪动到我们的工作目录demo里,这样数据就准备好了。
3、开始做词云了
做词云的核心步骤只有两个——输入文本和呼唤词云包。
首先,在命令行下,输入:
jupyter notebook
浏览器会自动开启,并且显示如下界面——Jupyter的主页面,我们点击New按钮,选择Python 2选项。
然后就出现了一个空白的笔记本,供我们使用了。我们在网页里唯一的代码文本框里,输入以下3条语句,输入后,按Shift+Enter键,就可以执行了。
filename = "yes-minister.txt"
with open(filename) as f:
mytext = f.read()
显示的结果如下图所示。
文本就出现了,然后我们呼唤(import)词云包,利用mytext中存储的文本内容来制造词云。
from wordcloud import WordCloud
wordcloud = WordCloud().generate(mytext)
此时,制作词云最核心的两步就完成了。
4、调出词云,完成
输入下面4行语句:
%pylab inline
import matplotlib.pyplot as plt
plt.imshow(wordcloud, interpolation='bilinear')
plt.axis("off")
运行结果如图所示:
这样一个简单的词云图就做好了,想要将词云图做的更加美观,还需要调节各种参数,这里就不一一讲解了,感兴趣地可以自己慢慢去探索。
FineBI
相比于Python,用FineBI最大的好处就是不用编写代码,简单易用,毫无数据和编程基础的人都能够轻松做出好看的词云。
1、下载安装FineBI,准备数据
为了方便起见,我这里就直接用FineBI自带的数据了。
2、组件设置
新建组件并选择样式数据业务包下的搜索词汇统计表,将待分析区域维度下的字段“搜索词”拖入横轴中,将指标下的字段“搜索次数”拖入纵轴中,在图表类型下选择词云图。
3、大小、文本、颜色的优化
选择该图表类型后,图形属性下形状自动切换为文字,维度字段被添加到文本中,指标字段添加到大小属性中,如下图:
4、词云完成
总结
通过进行词云分析,我们可以看的出来哪些数据是出现频次最多的,我们的关注点是哪些。这次我演示做的词云也很简单,后续在研究研究让它更美观一些,精准一些。
网友评论