读书使人充实,讨论使人机智,笔记使人准确…。凡有所学,皆成性格。
———— (英国)培根

文章目录

  • wordcloud库常规方法
  • 第三方库
  • 读取文件
  • 自定义绘制指定形状的词云
wordcloud库常规方法
import wordcloud
c=wordcloud.WordCloud()  #构建词云对象,配置对象参数
c.generate("wordcloud by python ")  #加载词云文本
c.to_file("pywordcloud.png")      #输出词云文件

词云生成步骤

  • 分隔:以空格分隔单词
  • 统计:单词出现次数并过滤(1-2个字母会被滤掉)
  • 字体:根据统计配置字号
  • 布局:颜色环境尺寸

c=wordcloud.WordCloud(参数) 配置对象参数

参数(像素) 描述
width(默认400px) c=wordcloud.WordCloud(width=600)
height(默认200px) c=wordcloud.WordCloud(height=400)
min_font_size(默认4号) c=wordcloud.WordCloud(min_font_size=10)
max_font_size(根据高度自动调节) c=wordcloud.WordCloud(max_font_size=20)
font_step(默认1,步长) c=wordcloud.WordCloud(font_step=2)
font_path(默认None,字体路径) c=wordcloud.WordCloud(font_path=“msyh.ttc”)
max_words(默认200,最大数量) c=wordcloud.WordCloud(max_words=20)
stop_words(指定去除单词的列表) c=wordcloud.WordCloud(stop_words={“python”})
background_color(默认黑色,词云背景色) c=wordcloud.WordCloud(background_color=“red”)

Scale 默认值1。值越大,图像密度越大越清晰

mask参数自定义词云形状

#指定词云形状,默认是长方形,需要引用imread()函数
from scipy.misc import imread
mk=imread("pic.png")
c=wordcloud.WordCloud(mask=mk)
第三方库

numpy 多维数组运算

matplotlib 绘图与数据可视化

pillow 图片处理

wordcloud 词云制作

imageio 图像输入输出

jieba 中文分词

snownlp 中文情感和自然语言处理

itchat 微信好友抓取

读取文件

政府工作报告词云

import wordcloud
# 从外部.txt文件中读取大段文本,存入变量txt中
f = open('政府工作报告.txt',encoding='utf-8')
txt = f.read()
# 构建词云对象w,设置词云图片宽、高、字体、背景颜色等参数
w = wordcloud.WordCloud(width=1000,height=700,background_color='white',font_path='msyh.ttc')
# 将txt变量传入w的generate()方法,给词云输入文字
w.generate(txt)
# 将词云图片导出到当前文件夹
w.to_file('Test1.png')

wordcloud中文分词(适合中文词云)

# 导入词云制作库wordcloud和中文分词库jieba
import jieba
import wordcloud
# 构建并配置词云对象w
w = wordcloud.WordCloud(width=1000,height=700,background_color='white',font_path='msyh.ttc')
# 调用jieba的lcut()方法对原始文本进行中文分词,得到string
txt = '由于Python语言的简洁性、易读性以及可扩展性, \在国外用Python做科学计算的研究机构日益增多, \一些知名大学已经采用Python来教授程序设计课程。 \例如卡耐基梅隆大学的编程基础、 \麻省理工学院的计算机科学及编程导论就使用Python语言讲授。'
txtlist = jieba.lcut(txt)
string = " ".join(txtlist)
# 将string变量传入w的generate()方法,给词云输入文字
w.generate(string)
# w.generate(" ".join(jieba.lcut(txt)))  #三段代码合一简写
# 将词云图片导出到当前文件夹
w.to_file('Teste2.png')
自定义绘制指定形状的词云
import jieba
import wordcloud
from scipy.misc import imread
mask=imread("图片形状.png") #导入自定义形状图片赋给mask
# 从外部.txt文件中读取大段文本,存入变量txt中
f = open('政府工作报告.txt',encoding='utf-8')
txt = f.read() #阅读提取
f.close()   #关闭
# 构建词云对象w,设置词云图片宽、高、字体、背景颜色等参数
w = wordcloud.WordCloud(width=1000,height=700,background_color='white',mask=mask,font_path='msyh.ttc')
# 将txt变量传入w的generate()方法,给词云输入文字
w.generate(" ".join(jieba.lcut(txt)))
# 将词云图片导出到当前文件夹
w.to_file('Test1.png')

勾勒词云轮廓

# 导入词云制作库wordcloud
import wordcloud
# 将外部文件包含的文本保存在string变量中
string = open('hamlet.txt').read()
# 导入imageio库中的imread函数,并用这个函数读取本地图片,作为词云形状图片
import imageio
mk = imageio.imread("ren.png")
# 构建词云对象w,注意增加参数contour_width和contour_color设置轮廓宽度和颜色
w = wordcloud.WordCloud(background_color="white",mask=mk,contour_width=1,contour_color='steelblue')
# # 将string变量传入w的generate()方法,给词云输入文字
w.generate(string)
# 将词云图片导出到当前文件夹
w.to_file('p2.png')

按模板自身颜色绘制词云

# 导入绘图库matplotlib和词云制作库wordcloud
import matplotlib.pyplot as plt
from wordcloud import WordCloud,ImageColorGenerator# 将外部文件包含的文本保存在text变量中
text = open('alice.txt').read()# 导入imageio库中的imread函数,并用这个函数读取本地图片queen2.jfif,作为词云形状图片
import imageio
mk = imageio.imread("alice.png")# 构建词云对象w
wc = WordCloud(background_color="white",mask=mk,)
# 将text字符串变量传入w的generate()方法,给词云输入文字
wc.generate(text)# 调用wordcloud库中的ImageColorGenerator()函数,提取模板图片各部分的颜色
image_colors = ImageColorGenerator(mk)# 显示原生词云图、按模板图片颜色的词云图和模板图片,按左、中、右显示
fig, axes = plt.subplots(1, 3)
# 最左边的图片显示原生词云图
axes[0].imshow(wc)
# 中间的图片显示按模板图片颜色生成的词云图,采用双线性插值的方法显示颜色
axes[1].imshow(wc.recolor(color_func=image_colors), interpolation="bilinear")
# 右边的图片显示模板图片
axes[2].imshow(mk, cmap=plt.cm.gray)
for ax in axes:ax.set_axis_off()
plt.show()# 给词云对象按模板图片的颜色重新上色
wc_color = wc.recolor(color_func=image_colors)
# 将词云图片导出到当前文件夹
wc_color.to_file('out-alice.png')

python词云库wordcloud自定义词云制作步骤详解相关推荐

  1. python怎样安装词云库_python词云库wordcloud的使用方法与实例详解

    wordcloud是优秀的词云展示第三方库 一.基本使用 import jieba import wordcloud txt = open("1.txt", "r&quo ...

  2. Python 使用 pylab 库实现画线功能的方法详解

    这篇文章主要介绍了 Python 使用 pylab 库实现画线功能的方法, 结合具体实例分析了 Python 使用 pylab 库的相关函数实现画线功能的操作技巧, 并附带说明了相关函数与参数功能, ...

  3. 阿里云mysql_阿里云下配置MySQL远程连接的步骤详解

    前言 众所周知在默认情况下,我们安在阿里云上的mysql是不支持远程连接的,但是我们还需要通过一些工具来连接mysql,如navicat,这时就需要我们来修改mysql的远程连接了. 注意一点:当我们 ...

  4. python编程顺序_Python编程中归并排序算法的实现步骤详解

    基本思想:归并排序是一种典型的分治思想,把一个无序列表一分为二,对每个子序列再一分为二,继续下去,直到无法再进行划分为止.然后,就开始合并的过程,对每个子序列和另外一个子序列的元素进行比较,依次把小元 ...

  5. python抽奖滚动界面_Python使用Tkinter实现转盘抽奖器的步骤详解

    我使用 Python 中的 Tkinter 模块实现了一个简单的滚动抽奖器,接下来继续写一个简单的转盘抽奖器. 滚动抽奖器与点名的场景相似,是从一群人中抽出中奖的人,奖品是提前确定了的,抽奖只是确定中 ...

  6. python转盘抽奖_Python使用Tkinter实现转盘抽奖器的步骤详解

    我使用 Python 中的 Tkinter 模块实现了一个简单的滚动抽奖器,接下来继续写一个简单的转盘抽奖器. 滚动抽奖器与点名的场景相似,是从一群人中抽出中奖的人,奖品是提前确定了的,抽奖只是确定中 ...

  7. python词云乱码_python词云库wordCloud使用方法详解(解决中文乱码)

    文章中的例子主要借鉴wordColud的examples,在文章对examples中的例子做了一些改动. 一.wordColud设计中文词云乱码 使用wordColud设计词云的时候可能会产生乱码问题 ...

  8. python词云库——wordcloud

    一.安装wordcloud 安装总结: 1.安装 C++编译器(如Dev c++编辑器),并将 安装目录\MinGW64\bin 配置环境变量 2.安装词云库 pip install wordclou ...

  9. 在python中使用关键字define定义函数_python自定义函数def的应用详解

    这里是三岁,来和大家唠唠自定义函数,这一个神奇的东西,带大家白话玩转自定义函数 自定义函数,编程里面的精髓! def 自定义函数的必要函数:def 使用方法:def 函数名(参数1,参数2,参数-): ...

最新文章

  1. Invalid Host header 问题解决
  2. java 连续打印_Java实现连续打印ABC
  3. 11.QT事件机制源码时序分析(下)
  4. Xamarin XAML语言教程模板视图TemplatedView(一)
  5. 1215.2——单链表
  6. MarkDown语法-使用博客园的markDown编辑
  7. SpringMvc JavaMailSenderImpl 邮件发送时到时前端无法接受Json数据问题解决
  8. PREV-55 小计算器 (进制转换)
  9. vue+vue-cli2+webpack配置资源cdn
  10. html文档元素两部分,html元素
  11. linux下的遥控器软件下载,万能遥控器软件
  12. Android一键加群实现
  13. 中国移动短信网关错误代码汇总(完整版)
  14. ff14服务器延迟滑步,ff14 5.0黑魔怎么玩_最终幻想14 5.0黑魔输出手法
  15. 前端获取计算机设备信息,前端获取设备/APP信息
  16. Matter理论介绍-通用-1-04:桥接器-其他功能
  17. HTML+css 基础语法
  18. void func()与 func(void)的区别
  19. Vue-1-实例、渲染、监听事件
  20. 微信公众号多媒体文件的处理

热门文章

  1. 软件工程(可行性研究)
  2. 百度收银台支付开通指引说明
  3. iview的Affix插件遇到滚动时候的bug处理方法
  4. windwos编程_CreateFile
  5. 超市消费系统管理E-R图
  6. Motirx 一款全能的下载工具
  7. 学习效果不理想怎么办?怎样提高
  8. Python源码:根据输入的年份得到对应的生肖(要求年份>=1900)
  9. GreenDao Currently only single FK columns are supported: ToOne ‘dpObjectsDB‘
  10. 武汉大专计算机专业分数线,武汉专科大学有哪些?武汉专科大学排名及分数线...