简 介: 使用Python中的响应软件软件包制作应用与中文的词云图片。使用jieba用于中文词语划分。文中对于程序的背景图片以及不同的字体所确定的词云的表现进行了测试。
关键词
: 词云,字体,背景
在博文 第十六届智能车竞赛全国总决赛究竟该怎么举办讨论中的“混沌”现象 对于微信平台的留言生成对应的 词云 ,根据博文 简单中文词云图的制作 中给出的程序框架,制作了词云生成的模板。
▲ 图1.1 生成的留言词云示例
词云可以对于一段文字中的主要词语进行形象化表现,在词频角度发现一段语句中的主要词语。
#!/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 #============================================================
在程序中 picimage是用于确定生成词云边界轮廓的图片。 在 BING中使用 silhouette进行搜索,可以获得各类剪切图片。
▲ 图2.2 使用silhouette在BING的图片搜索到的相关剪切图片
下面给出几个示例:
下面使用黑色的马坐在背景,可以生成对应的词云图片。
▲ 图2.3 作为背景的图片
▲ 图2.4 生成的词云的图片
▲ 图2.5.1 作为背景的剪切图片
▲ 图2.5.2 使用狮子剪影作为背景生成的词云
▲ 图2.6.1 骑马人剪影图片
▲ 图2.6.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目录中的字体
▲ 图3.2.1 使用 RIGOL字体生成的词云
▲ 图3.2.2 使用 STHUPO 字体生成的词云
▲ 图3.2.3 使用 STCAIYUN 字体生成的词云
下面给出了几个制作词云工具:
■ 相关文献链接:
● 相关图表链接: