使用jieba、wordCloud制作自定义形状的中文词云


工具集

1.Python: https://www.python.org/downloads/release/python-374/

2.结巴中文分词jieba

3.词云生成 wordCloud

4.在线抠图,抠出想要的词云形状 https://www.remove.bg/zh

5.在线PS,图片截取及制作词云的形状 https://ps.gaoding.com/



安装工具

1.安装Python

直接到Python官网下载安装即可。我用的是Python 3.7,链接如下:

https://www.python.org/downloads/release/python-374/

2.打开cmd窗口并设置环境变量

1)打开cmd窗口

2)使用pushd切换到工作目录

pushdH:\Rudy\Project\自媒体\微信公众号_精打细算买好物\词云

注意:请将路径替换成你自己的工作目录。

3)设置环境变量

PATH=C:\Users\My\AppData\Local\Programs\Python\Python37;C:\Users\My\AppData\Local\Programs\Python\Python37\Scripts;%PATH%

注意:路径是你自己电脑上的Python安装路径。

3.安装结巴中文分词jieba

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple jieba

4.安装wordCloud

pip install -i https://pypi.tuna.tsinghua.edu.cn/simple wordCloud



处理中文分词

输入

jieba_in.txt:用来生成词云图的原始文本。

jieba_userdict.txt:不想被拆分的自定义词语字典。比如我的微信微信公众号“精打细算买好物”,结巴分词默认会分成“精打细算”、“买”、“好物”三个词语,但只要我把“精打细算买好物”加到到这个文件里,那么结巴分词就不会拆分它,而是把它当成一个词语输出。一个词语占一行。

输出

jieba_out.txt:用来生成词云图的最终文本,是wordCloud的输入文件。

处理步骤

python -m jieba -u jieba_userdict.txt jieba_in.txt > jieba_out.txt

如果你的文本文件是UTF-8编码的, 那就用以下命令指定文件编码即可。

python -X utf8 -m jieba -u jieba_userdict.txt jieba_in.txt > jieba_out.txt



处理词云形状

输入:

wc_org.jpg:计划用来生成词云的原始形状文件

输出:

wc_mask.png:词云的形状。

wc.png:词云中字体的颜色。

处理步骤

1)使用https://ps.gaoding.com/ 中打开wc_org.jpg截取词云图案

A)选中用来生成词云的主要图案,Ctrl+C复制。

B)创建一个新文件,然后Ctrl+V粘贴

C)将新文件导出为:wc_org_main.jpg。

2)使用https://www.remove.bg 把wc_org_main.jpg的背景去掉

A)打开网页,把上一步生成的wc_org_main.jpg拖动到网页上,即可去掉背景。

B)去掉背景后,默认是透明的。但是wordCloud不能处理透明背景,所以我们要把背景设为白色,然后下载重命名为wc.png。这个wc.png有两个用途:一是用来制作词云的形状,二是用来定义词云中字体的颜色。

3)使用https://ps.gaoding.com/ 制作词云形状

A)打开上一步生成的wc.png。

B)使用魔棒,选中所有白色区域。

C)反选,再按键盘“Delete”键删除

D)使用黑色填充,然后导出文件为:wc_mask.png,这就是wordCloud用来生成词云的形状文件。



生成词云

输入

jieba_out.txt:经过中文分词处理用于生成词云的文本文件

wc_stopwords.txt:除外文件。文件中的词语不会出现在词云。

wc.png:词云字体的配色。

wc_mask.png:词云形状。

字体文件名:在C:\Windows\Fonts中选一个字体,右键属性即可得到字体的文件名。*.TTF文件可以,*.fon文件不支持,其他字体文件未测试。

输出

out.png:词云的图形文件。

处理步骤

1. 默认配色

wordcloud_cli --text jieba_out.txt --imagefile out.png --mask wc_mask.png --fontfile STXINGKA.TTF --stopwords wc_stopwords.txt

2.指定配色文件

wordcloud_cli --text jieba_out.txt --imagefile out.png --mask wc_mask.png --fontfile STXINGKA.TTF --stopwords wc_stopwords.txt --colormask wc.png

3.白色背景

wordcloud_cli --text jieba_out.txt --imagefile out.png --mask wc_mask.png --fontfile STXINGKA.TTF --stopwords wc_stopwords.txt --colormask wc.png --background white

你可能感兴趣的:(使用jieba、wordCloud制作自定义形状的中文词云)