python wordcloud 词云

python wordcloud 词云

词云是对文本数据中出现频率较高的“关键词”在视觉上的突出呈现,形成关键词的渲染形成类似云一样的彩色图片,从而一眼就可以领略文本数据的主要表达意思。
而python在生成词云上也是非常的方便。

需要安装的包

使用pip安装下述包

  • jieba:一个国人开发的优秀的分词工具
  • wordcloud:词云的核心包
  • matplotlibPILnumpy用于处理和绘制图像

wordcloud安装的问题

我是windows下安装,由于缺乏VS编译器在pip install时无法正确安装wordcloud。

  1. 此时想用minGW去编译,发现python3.5.2的版本在windows下不支持minGW。。。
  2. 于是转战linux平台,发现安装还是出问题。提示没有python-tk。即tkinter,一个python默认使用的GUI平台。此平台在windows下是随安装包可选安装的,但linux下并未安装。于是使用apt来安装。之后就开开心心的安装成功了。

    注意使用的python版本

    sudo apt-get Install python3-tk
    

代码

生成词云的大致过程可分为:

  • 读取和处理文本
  • 读取背景
  • 设置参数并生成词云
  • 绘图

具体使用请见下述源码

import jieba
import wordcloud
import matplotlib.pyplot as plt
import PIL
import numpy as np

# Read raw file
with open('word.txt', 'r') as f:
    raw_txt = f.read()

# Read background pic
pic = PIL.Image.open("backgroud.jpg")
pic_mask = np.array(pic)

# word split
raw_txt = jieba.cut(raw_txt, cut_all=True)
raw_txt = ' '.join(raw_txt) # split word with space

# Make word cloud, The parameters setting please see help()
wc = wordcloud.WordCloud()
wc.font_path        = 'msyh.ttf' # microsoft yahei
wc.width            = 1200
wc.height           = 800
wc.max_word         = 2000
wc.mask             = pic_mask
wc.radom_state      = 42
wc.max_font_size    = 84
wc.min_font_size    = 16
wc.background_color = "white"
word_cloud = wc.generate(raw_txt)

# plot word cloud
plt.imshow(word_cloud)
plt.axis('off')
plt.figure()

# plot word cloud with re-color by mask
img_color   = wordcloud.ImageColorGenerator(pic_mask)
img_recolor = word_cloud.recolor(color_func=img_color)
plt.imshow(img_recolor)
plt.axis("off")
plt.show()

输出结果

由于背景图片没有处理过,所以看上去有些凌乱。但还是能够看出大致轮廓和相似的色彩。另外,大家看的出用于词云分析的是什么文章吗?:)

词云图:

这里写图片描述

结合原图颜色处理后的词云图:

这里写图片描述

原图:

原图

参考


### 回答1: 您可以使用 python 的第三方库 "wordcloud" 来生成词云。首先需要安装该库,您可以使用以下命令进行安装: ``` pip install wordcloud ``` 然后,您可以通过以下代码生成词云: ```python from wordcloud import WordCloud import matplotlib.pyplot as plt text = "词云生成的文本" wordcloud = WordCloud().generate(text) plt.imshow(wordcloud, interpolation='bilinear') plt.axis("off") plt.show() ``` 您也可以调整生成词云的其他参数,例如字体,背景颜色等。更多内容请参考官方文档:https://amueller.github.io/word_cloud/ ### 回答2: Python123wordcloud是一个用于生成词云Python库。 通过使用Python123wordcloud,我们可以轻松地根据给定的文本数据生成词云图。词云图是一种可视化工具,用于显示文本中不同词语的频率和重要性。生成词云图可以帮助我们更直观地理解文本中的关键词信息。 使用Python123wordcloud的基本步骤如下: 1. 导入Python123wordcloud库:在Python脚本中使用`import wordcloud`语句导入Python123wordcloud库。 2. 准备文本数据:将需要生成词云图的文本数据准备好,并存储在一个变量中。 3. 创建WordCloud对象:使用`wc = wordcloud.WordCloud()`创建一个WordCloud对象。可以通过设置不同的参数来自定义词云图的样式,如词云图的形状、字体、颜色等。 4. 生成词云图:使用`wc.generate(text)`方法生成词云图,其中`text`是之前准备好的文本数据。 5. 显示词云图:使用`import matplotlib.pyplot as plt`导入matplotlib库,并使用`plt.imshow(wc)`和`plt.axis("off")`来显示词云图,其中`wc`是之前生成的词云对象。最后使用`plt.show()`来展示词云图。 Python123wordcloud还提供了其他的一些功能,如根据颜色、字体大小等参数对词云图进行定制化调整,或者通过设置屏蔽词来排除一些无关的词语。 总而言之,使用Python123wordcloud可以方便地生成词云图,帮助我们更好地理解文本数据的关键词信息。 ### 回答3: Python123WordCloud是一个用Python编程语言编写的词云生成工具。通过该工具,我们可以根据给定的文本数据生成美观、有趣的词云图像。 使用Python123WordCloud生成词云的步骤如下: 1. 导入相关库:首先需要导入必要的库,如wordcloud、matplotlib和numpy。 2. 加载文本数据:将需要生成词云的文本数据加载到程序中。可以是从文件中读取的文本,或者直接将文本赋值给一个字符串变量。 3. 对文本数据进行处理:对文本进行必要的清洗和处理。可以使用正则表达式、nltk等工具进行去除噪音、分词、去除停用词等操作,以便获取更准确的词云结果。 4. 创建词云对象:创建一个WordCloud对象,可以根据需要设置词云的参数,如字体、颜色、背景颜色、尺寸等。 5. 生成词云图像:调用WordCloud对象的generate方法,传入处理好的文本数据,生成词云图像。 6. 显示或保存词云图像:使用matplotlib库将生成的词云图像显示出来,也可以保存为文件。 Python123WordCloud提供了许多参数可以自定义词云图像的样式和风格,如设置最大词汇数、设置词云形状等。通过调整这些参数,我们可以根据实际需求生成满足我们需要的词云图像。 总之,Python123WordCloud是一个方便易用的词云生成工具,可以通过简单的几步操作生成具有艺术感与观赏性的词云图像,可用于数据分析、文本可视化等领域。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值