生成中文词云图的制作:带有不同的背板

Posted 卓晴

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了生成中文词云图的制作:带有不同的背板相关的知识,希望对你有一定的参考价值。

简 介: 使用Python中的响应软件软件包制作应用与中文的词云图片。使用jieba用于中文词语划分。文中对于程序的背景图片以及不同的字体所确定的词云的表现进行了测试。

关键词 词云字体背景

 

§01 成词云


一、背景

  在博文 第十六届智能车竞赛全国总决赛究竟该怎么举办讨论中的“混沌”现象 对于微信平台的留言生成对应的 词云 ,根据博文 简单中文词云图的制作 中给出的程序框架,制作了词云生成的模板。

▲ 图1.1 生成的留言词云示例

  词云可以对于一段文字中的主要词语进行形象化表现,在词频角度发现一段语句中的主要词语。

二、Python 程序

1、生成Python程序

#!/usr/local/bin/python
# -*- coding: gbk -*-
#============================================================
# CWCLOUD.PY                   -- by Dr. ZhuoQing 2021-08-02
#
# Note:
#============================================================
from headm import *
import jieba
from wordcloud              import WordCloud
from PIL                    import Image
filename = r'd:\\temp\\words.txt'
lines = ''
with open(filename, 'r') as f:
    lines = (' '.join(f.readlines())).replace('\\n', '')
#    printf(lines)
if len(lines) == 0:
    printf("No words.\\a")
    exit()
#------------------------------------------------------------
cut = jieba.cut(lines)
words = ' '.join(cut)
printf(len(words))
#------------------------------------------------------------
picfile = r'd:\\temp\\bk.bmp'
img = Image.open(picfile)
img_array = array(img)
wc = WordCloud(background_color='white',
               mask=img_array,
               font_path=r'c:\\windows\\fonts\\SIMHEI.TTF')
pltgif = PlotGIF()
for _ in range(20):
    wc.generate_from_text(words)
    plt.clf()
    plt.imshow(wc)
    plt.axis('off')
    #plt.show()
    plt.draw()
    plt.pause(.1)
    pltgif.append(plt)
pltgif.save(r'd:\\temp\\gif1.gif')
#------------------------------------------------------------
#        END OF FILE : CWCLOUD.PY
#============================================================

2、几点说明

(1) 背景图片

  在程序中 picimage是用于确定生成词云边界轮廓的图片。 在 BING中使用 silhouette进行搜索,可以获得各类剪切图片。

▲ 图2.2 使用silhouette在BING的图片搜索到的相关剪切图片

  下面给出几个示例:

【Ⅰ.使用马的剪影】

  下面使用黑色的马坐在背景,可以生成对应的词云图片。

▲ 图2.3 作为背景的图片

▲ 图2.4 生成的词云的图片

【Ⅱ.使用狮子剪影】

▲ 图2.5.1 作为背景的剪切图片

▲ 图2.5.2 使用狮子剪影作为背景生成的词云

【Ⅲ.骑马人剪影图片】

▲ 图2.6.1 骑马人剪影图片

▲ 图2.6.2 使用骑马人生成的词云图片

(2) 字体

  在程序中, 使用WordCloud中的font_path 设置了词云字体。

wc = WordCloud(background_color='white',
               mask=img_array,
               font_path=r'c:\\windows\\fonts\\SIMHEI.TTF')

  可以在Windows 的Fonts 知道多种字体。使用“拷贝-粘贴”或者对应的字体的名字。下面测试几款不同的字体所生成的词云。

▲ 图3.1 Windows中的Font目录中的字体

  • RIGOL.TTF 字体:

▲ 图3.2.1 使用 RIGOL字体生成的词云

  • 使用琥珀 STHUPO字体

▲ 图3.2.2 使用 STHUPO 字体生成的词云

  • 使用花纹彩文字体:

▲ 图3.2.3 使用 STCAIYUN 字体生成的词云

 

§02 作小结


  下面给出了几个制作词云工具:


■ 相关文献链接:

● 相关图表链接:

以上是关于生成中文词云图的制作:带有不同的背板的主要内容,如果未能解决你的问题,请参考以下文章

C#中使用jieba.NETWordCloudSharp制作词云图

如何生成关键词云图?

python学习之 python制作词云图 我的第一张python词云图 python怎么做词云图

Python成长之路词云图制作

C#中使用jieba.NETWordCloudSharp制作词云图

Python3制作中文词云图