python库学习之wordcloud(生成词云)

前言
在研究数字可视化时,接触到了词云,python中wordcloud库可以根据所给词的频率和背景图生成好看的词云,觉得很好玩,特将学习过程记录于此。部分学习内容参考了网络中blog的内容,在参考目录中罗列出。
官网传送门: https://pypi.org/project/wordcloud/
源码传送门: https://github.com/amueller/word_cloud
用法传送门http://amueller.github.io/word_cloud/cli.html

一、介绍

wordcloud是优秀的词云展示第三方库,以词语为基本单位,通过图形可视化的方式,更加直观和艺术的展示文本。

二、安装

方法一:pip

在命令行输入pip install wordcloud

图片

方法二:conda

可以使用conda-forge安装

conda install -c conda-forge wordcloud

⭐ ⭐注意 ⭐ ⭐

官网中特别强调,wordcloud需要的依赖有numpy和pillow,当需要把wordcloud保存成一个文件的时候,需要安装matplotlib库

安装方法同上,在命令行输入pip install matplotlib

三、使用

1. 命令行方式

官网介绍传送门:http://amueller.github.io/word_cloud/cli.html

--text 参数后面要写生成词云所需要的文本文件
--imagefile  保存词云图片,指定路径和文件名
$ wordcloud_cli --text mytext.txt --imagefile wordcloud.png

注意
这个 $ 符号不需要管它,他是linux shell里的,这个命令在windows下也可以用,前提是装好wordcount

图片

运行结果:

图片

如果要处理pdf文件,可以使用pdftotext

$ pdftotext mydocument.pdf - | wordcloud_cli --imagefile wordcloud.png

pdftotext首先把pdf文件的处理结果写入stdout,然后再通过管道,作为wordcloud_cli的输入内容。

2. 在python中使用

2.1 简介

wordcloud 库把词云当作一个WordCloud对象,wordcloud.WordCloud()代表一个文本对应的词云,可以根据文本中词语出现的频率等参数绘制词云,绘制词云的形状、尺寸和颜色均可设定以WordCloud对象为基础,配置参数、加载文本、输出文件。

wordcloud类的初始化函数包括很多的参数,重要的已经标注了注释

# wordcloud的__init__方法的参数如下
classwordcloud.WordCloud(
font_path=None,        # None表示不再另行指定使用什么样的字体
width=400,             # width指定画布的宽度
height=200,            # height指定画布的高 即生成分辨率为(400,200)的图片
margin=2,              # 
ranks_only=None, 
prefer_horizontal=0.9,  # 默认为0.9,代表文本横向排版出现的频率为0.9,垂直排版频率为0.1
mask=None,              # 默认词云会填充画布默认大小,若不是None,则默认画布大小将失效,遮罩的形状被mask取代。mask中全白区域将不会绘制词云,所以导入图片时注意该图片的背景必须为白色,而填充区域为其他颜色,可以利用ps抠图放在纯白的画布中。
scale=1,                # 默认为1,按比例放大(>1)画布或者缩小(<1) float类型
color_func=None, 
max_words=200,          # 最大字数
min_font_size=4,        # 要使用的最小字体的字号
stopwords=
  • 1
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值