wordcloud库是优秀的词云展示第三方库,可以将一段文本变成词云(词云以词语为基本单位,更加直观和艺术的展示文本)

cmd命令行 pip install wordcloud

示例如下:

wordcloud库把词云当作一个WordCloud对象(具体词云,有大写有小写)

wordcloud.WordCloud()代表一个文本对应的词云

可以根据文本中词语出现的频率等参数绘制词云

绘制词云的形状,尺寸和颜色都可以设定

wordcloud库常规方法:

w=wordcloud.WordCloud()

以WordCloud对象为基础(wordcloud就是一个程序版的词云)

配置参数,加载文本,输出文件

w.generate(txt) 向WordCloud对象w中加载文本txt

代码示例如下所示:

w.generate("Python and wordcloud")

w.to_file(filename) 将词云输出为图像文件  .png或.jpg格式

代码示例如下:

w.to_file("love.png")

词云绘制:

步骤一:配置对象参数

步骤二:加载词云文本

步骤三:输出词云文件

代码示例如下:

import wordcloud
w=wordcloud.WordCloud()
w.generate("Python and wordcloud")
w.to_file("love.png")

运行界面如图:

相对于一个词云,它是一个程序逻辑,然后我们向它输入一段文本,那么它的程序逻辑中就会根据文本绘制出一个词云图像。

“ Python and wordcloud”

1.分隔:wordcloud以空格为分隔符号,来将文本分隔成单词

2.统计:单词出现次数(如果出现次数多,字体大;出现次数少的,字体小,同时将很短的单词(1~2个字符)过滤掉)

3.字体:根据统计配置字号。

4.布局:颜色环境尺寸

配置对象参数:w=wordcloud.WordCloud(<参数>)

1.width,指定词云对象生成图片的宽度,默认400.

代码示例如下:

import wordcloud
w=wordcloud.WordCloud(width=600)
w.generate("Python and wordcloud")
w.to_file("width.png")

运行界面如下:

2.height,指定词云对象生成图片的高度,默认200.

代码示例如下:

import wordcloud
w=wordcloud.WordCloud(height=600)
w.generate("Python and wordcloud")
w.to_file("height.png")

运行界面如下:

 3.min_font.size,指定词云中字体的最小字号,默认为4号。

代码示例如下:

import wordcloud
w=wordcloud.WordCloud(min_font_size=15)
w.generate("Python and wordcloud")
w.to_file("min_font.size.png")

运行界面如下:

4. max_font.size,指定词云中字体的最大字号,根据高度自动调节。

代码示例如下:

import wordcloud
w=wordcloud.WordCloud(max_font_size=30)
w.generate("Python and wordcloud")
w.to_file("max_font.size.png")

运行界面如下:

 5.font_step,指定词云中字体字号的步进间隔,默认为1.

代码示例如下:

import wordcloud
w=wordcloud.WordCloud(font_step=3)
w.generate("Python and wordcloud")
w.to_file("font_step.png")

运行界面如下:

 6.font_path,指定词云中字体文件的路径,默认为None.

示例代码如下:

import wordcloud
import jieba
import imageio
mk=imageio.imread("五角星.jpg")
txt="程序设计语言是用于书写计算机程序的语言。语言的基础是一组记号和一组规则。根据规则由记号构成的记号串的总体就是语言。在程序设计语言中,这些记号串就是程序。" \"程序设计语言有3个方面的因素,即语法、语义和语用。语法表示程序的结构或形式," \"亦即表示构成语言的各个记号之间的组合规律,但不涉及这些记号的特定含义,也不涉及" \"使用者。语义表示程序的含义,亦即表示按照各种方法所表示的各个记号的特定含义,但不涉及使用者"
w=wordcloud.WordCloud(background_color="white",font_path="msyh.ttc",height=600,width=800,mask=mk)   #此字体为微软雅黑字体
w.generate(" ".join(jieba.lcut(txt)))
w.to_file("中文文本.png")

运行界面如图:

7.max_words,指定词云显示的最大单词数量,默认为200。

示例代码如下:

import wordcloud
w=wordcloud.WordCloud(max_words=30)
w.generate("Python and wordcloud")
w.to_file("max_words.png")

运行界面如下:

8.stopwords,指定词云的排除词列表,即不显示的单词列表。

代码示例如下:

import wordcloud
w=wordcloud.WordCloud(stopwords={"python"})
w.generate("Python and wordcloud")
w.to_file("stopwords.png")

运行界面如下:

9.mask,指定词云形状,默认为长方形,需要引用imread()函数。由于python已经将imread函数封装在imageio模块里面,所以我们需要在cmd里面输入命令pip install imageio,进行安装imageio这个库。当再使用from scipy.mics import imread时会出现错误,而且from scipy.mics import imread这个方法已经被弃用。

代码示例如下:

import wordcloud
import jieba
import imageio
mk=imageio.imread("五角星.jpg")
txt="程序设计语言是用于书写计算机程序的语言。语言的基础是一组记号和一组规则。根据规则由记号构成的记号串的总体就是语言。在程序设计语言中,这些记号串就是程序。" \"程序设计语言有3个方面的因素,即语法、语义和语用。语法表示程序的结构或形式," \"亦即表示构成语言的各个记号之间的组合规律,但不涉及这些记号的特定含义,也不涉及" \"使用者。语义表示程序的含义,亦即表示按照各种方法所表示的各个记号的特定含义,但不涉及使用者"
w=wordcloud.WordCloud(background_color="white",font_path="msyh.ttc",height=600,width=800,mask=mk)
w.generate(" ".join(jieba.lcut(txt)))
w.to_file("中文文本.png")

运行界面如下:

10.background_color,指定词云图片的背景颜色,默认为黑色。

代码示例如下:

import wordcloud
w=wordcloud.WordCloud(background_color="red")
w.generate("Python and wordcloud")
w.to_file("background_color.png")

运行界面如下:

 下面以英文文本和中文文本进行示例:

示例一:英文文本:

示例代码如下:

import wordcloud
txt="life is short,you need python"
w=wordcloud.WordCloud(background_color="blue")
w.generate(txt)
w.to_file("英文文本.png")

运行界面如下:

示例二:中文文本:

示例代码如下:

import wordcloud
import jieba
txt="程序设计语言是用于书写计算机程序的语言。语言的基础是一组记号和一组规则。根据规则由记号构成的记号串的总体就是语言。在程序设计语言中,这些记号串就是程序。" \"程序设计语言有3个方面的因素,即语法、语义和语用。语法表示程序的结构或形式," \"亦即表示构成语言的各个记号之间的组合规律,但不涉及这些记号的特定含义,也不涉及" \"使用者。语义表示程序的含义,亦即表示按照各种方法所表示的各个记号的特定含义,但不涉及使用者"
w=wordcloud.WordCloud(background_color="blue",font_path="msyh.ttc",height=600,width=800)
w.generate(" ".join(jieba.lcut(txt)))
w.to_file("中文文本.png")

运行界面如下:

中文需要先分词并组成空格分隔字符串

jieba.lcut(s) 精确模式,返回一个列表类型的分词结果

w.generate(" ".join(jieba.lcut(txt)))即为用空格的方法去分隔jieba库精确模式下形成的字符串。

wordcloud库详解相关推荐

  1. matlab中sinks,MATLAB Simulink模块库详解(二)Sinks篇

    MATLAB Simulink模块库详解(二)Sinks篇 Simulink模块库概述 1.Sources模块库,为仿真提供各种信号源 2.Sinks模块库,为仿真提供输出设备元件 3.Continu ...

  2. STM32 HAL库详解 及 手动移植

    源: STM32 HAL库详解 及 手动移植

  3. stm32 IOT_基于STM32平台的cubeMX和HAL库详解

    课程简介: <朱有鹏老师单片机完全学习系列课程>总共5季,其中第1.2季是51单片机学习,第3.4.5季是STM32单片机与RTOS学习.整个课程时长约250小时,是一套零基础.全面系统. ...

  4. 爬虫笔记:Requests库详解

    什么是Requests 之前讲解了爬虫笔记:Urllib库详解发现确实有不方便的地方,比如加一个代理,cookie,发送post请求比较繁琐. Request库能用几句话实现这些. Requests ...

  5. python爬虫之urllib库详解

    python爬虫之urllib库详解 前言 一.urllib库是什么? 二.urllib库的使用 urllib.request模块 urllib.parse模块 利用try-except,进行超时处理 ...

  6. Python Urllib库详解

    Urllib库详解 什么是Urllib? Python内置的HTTP请求库 urllib.request 请求模块 urllib.error 异常处理模块 urllib.parse url解析模块 u ...

  7. mysql5.6+master+date_MySQL5.6的4个自带库详解

    1.information_schema详细介绍: information_schema数据库是MySQL自带的,它提供了访问数据库元数据的方式.什么是元数据呢?元数据是关于数据的数据,如数据库名或表 ...

  8. 爬虫入门之urllib库详解(二)

    爬虫入门之urllib库详解(二) 1 urllib模块 urllib模块是一个运用于URL的包 urllib.request用于访问和读取URLS urllib.error包括了所有urllib.r ...

  9. python gpu加速库比matlab快吗_Python之Unittest和Requests库详解

    1.按类来执行 import unittest class f1(unittest.TestCase): def setUp(self): pass def tearDown(self): pass ...

  10. chrono是一个time library,C++11 std::chrono库详解

    C++11 std::chrono库详解 chrono是一个time library, 源于boost,现在已经是C++标准.话说今年似乎又要出新标准了,好期待啊! 要使用chrono库,需要#inc ...

最新文章

  1. android 自定义键盘高度不对,NVUE 容器一旦设置了position且容器高度不能超过整屏,在安卓端就会被键盘遮挡...
  2. 图灵喜获Stevens名著《TCP/IP Illustrated》影印版权
  3. python开发桌面软件-python适合windows的桌面应用程序开发吗?
  4. IOS学习动画二之 Core Animation (3)
  5. 【Linux】28_网站服务动态站点
  6. 以太坊DAPP[2]-×××-react框架与web3实例
  7. 二手轻型载货车报价图片_别买贵了,老陈带你走进二手iPhone的大本营:深圳飞扬市场...
  8. c语言做一个小程序报告,《C语言程序设计实践》课程报告30个小程序组合成一个大程序.doc...
  9. android 开发问题集(一):SDK更新后 运行程序报错Location of the Android SDK has not been setup in the preferences
  10. 华为ap配置_13、了解下POE交换机以及AP供电几种方式
  11. 闪存类型测试软件,一芯U盘闪存测试工具(DieSorting)
  12. windows 错误代码2
  13. 螺旋英雄谭怎么在电脑上玩 螺旋英雄谭安卓模拟器教程
  14. 安卓初学者笔记(四):用白话讲明白Activity是什么
  15. 工具(五)--将doc格式文件批量转为docx
  16. 新冠造成的经济崩溃对女性影响最大
  17. 提升ASO榜单排名优化主要方式有哪些?
  18. 【渝粤教育】广东开放大学 岭南文化概论 形成性考核 (45)
  19. 3dmax用云渲染好还是本地渲染好?云渲染哪个好用?
  20. 【2019斯坦福CS224N笔记】(5)The probability of a sentence Recurrent Neural Networks and Language Models

热门文章

  1. Top 10 JavaScript编辑器,你在用哪个?
  2. Three.js编辑器editor使用详解
  3. Openlayers GPS(度分秒)和经纬度坐标相互转换
  4. java 148. 排序链表
  5. 简单爬虫爬取知乎日报并保存日报网页到本地
  6. python爬虫 图片验证码_python爬取验证码图片(待识别)
  7. 计算机考试打字小作文,打字练习作文(通用5篇)
  8. 使用频谱仪测试信号抗干扰实验
  9. 数据地图搜索功能模块项目总结【springBoot+Elasticsearch】
  10. 普通用户sudo echo权限依旧写入不了文件