黑马程序员技术交流社区

标题: 【上海校区】用Python搞出自己的云词图 [打印本页]

作者: 不二晨    时间: 2019-1-4 09:27
标题: 【上海校区】用Python搞出自己的云词图
云词图简介

什么词云

由词汇组成类似云的彩色图形。“词云”就是对网络文本中出现频率较高的“关键词”予以视觉上的突出,形成“关键词云层”或“关键词渲染”,从而过滤掉大量的文本信息,使浏览网页者只要一眼扫过文本就可以领略文本的主旨。

有何作用

1、直观,高大上
2、可装逼,很潇洒 ![
准备工作

1、导入包——jieba和wordcloud

命令:pip install jieba
命令:pip install wordcloud
备注:对于pycharm等可采用各自的方法导入包

2、文本和图片的准备

文本:可爬取网上资料或某歌曲书籍等关键字,亦或是像我是自己手动输入文字并用tab隔开
图片:找自己喜欢的图片,这里我采用乔巴的图片作为背景,而且除了主要人物外,其他背景都为白色,显示效果较好。

采用的文本内容: ![在这里插入图片描述]()

采用的图片: ![在这里插入图片描述](?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,shadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2ZseWZvcjIwMTM=,size_16,color_FFFFFF,t_70)

代码展示

# coding: utf-8
import jieba
from wordcloud import WordCloud,STOPWORDS
from scipy.misc import imread # 处理图像的函数
import matplotlib.pyplot as plt

# 读取文本文件
text = open('/media/pzw/0E50196C0E50196C/weixin/t1.txt', 'r').read()
# 对文本进行分词
cut_text = ''.join(jieba.cut(text))
# 读取图片
color_mask = imread('/media/pzw/0E50196C0E50196C/weixin/qiaoba.jpg')
# 生成词云
cloud = WordCloud(font_path='G:/py/wc/new_songti.ttc',# 这里是导入字体,因为我是采用英文的,所有不导入也并不影响,若是中文的或者有其他的字符需要自己选择合适的字体包
                  background_color="white",
                  mask=color_mask,
                  max_words=2000,
                  max_font_size=80)
word_cloud = cloud.generate(cut_text)

# 输出图片
plt.axis('off')
plt.imshow(word_cloud)
plt.show()

---------------------
转载,仅作分享,侵删
作者:flyfor2013
原文:https://blog.csdn.net/flyfor2013/article/details/85546726



作者: 不二晨    时间: 2019-1-10 10:29
奈斯,加油




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2