返回顶部
首页 > 资讯 > 后端开发 > Python >Python词云的正确实现方法实例
  • 678
分享到

Python词云的正确实现方法实例

2024-04-02 19:04:59 678人浏览 泡泡鱼

Python 官方文档:入门教程 => 点击学习

摘要

一、相关模块 jieba:中文分词 Wordcloud :python词云库 imageio:读取图形数据 安装: pip install jieba pi

一、相关模块

jieba:中文分词

Wordcloud :python词云库

imageio:读取图形数据

安装:


pip install jieba
pip install wordcloud
pip install imageio

二、wordcloud四大类

功能
WordCloud([font_path, width, height, …]) 生成和绘制词云对象
ImageColorGenerator(image[, default_color]) 基于图片的色彩
random_color_func([word, font_size, …]) 随机生成颜色
get_single_color_func(color) 创建一个颜色函数,它返回一个色调和饱和度

三、wordcloud类

1、WordCloud类


class wordcloud.WordCloud(
    font_path=None, width=400, height=200, margin=2, 
    ranks_only=None, prefer_horizontal=0.9, mask=None, 
    scale=1, color_func=None, max_words=200, min_font_size=4, 
    stopwords=None, random_state=None, background_color='black', 
    max_font_size=None, font_step=1, mode='RGB', relative_scaling='auto', 
    regexp=None, collocations=True, colORMap=None, normalize_plurals=True, 
    contour_width=0, contour_color='black', repeat=False, include_numbers=False, 
    min_word_length=0, collocation_threshold=30)

2、WordCloud参数详解

参数 详解
font_path 词云图的字体路径(OTF或TTF格式)
width 画布的宽度、默认为400,如果mask不为空时,设置为mask获取图片的大小
height 画布的高度,默认为200,如果mask不为空时,设置为mask获取图片的大小
prefer_horizontal 默认值0.9;当值<1时,遇到不合适的地方时,算法将词体自动旋转
mask 默认为None;如果不为空,指定了画布的图形,则width和height值不生效,使用提供的图形的大小
contour_width 如果mask不为空,并且contour_width>0,将描绘出mask获取图片的轮廓,值越大,轮廓的线越粗
contour_color 使用Mask时,描绘图片轮廓的颜色
scale 图片生成后放大缩小时的分辨率
min_font_size 词云图显示的最小字体,默认为4
max_font_size 词云图显示的最大字体
max_words 词云显示的最大词数
font_step 字体步长
stopwords 不显示的词,如果没有设置,则使用默认的内置的STOPWORdS列表;如果使用generate_from_frequencies参数,则忽略
background_color 背景颜色
mode 默认为"RGB",当mode="RGBA"并且background_color为None时,将会显示透明背景
relative_scaling 字体大小与词频的关系,默认值为auto
color_func 默认为None,color_func=lambda *args, **kwargs:(255,0,0)词云的字体颜色将这设置为红色
regexp 使用正则切分,默认为r"\w[\w']+",如果使用generate_from_frequencies则此参数不生效
collocations 是否包含两个词的搭配,默认为True,如果使用generate_from_frequencies则此参数不生效
colormap 设置颜色的参数,默认为"viridis",如果使用color_func参数,则此参数不生效
normalize_plurals 是否删除尾随的词,比如's,如果使用generate_from_frequencies参数,则此参数不生效
repeat 是否重复词组直到设置的最大的词组数
include_numbers 是否包含数字,默认我False
min_word_length 最小数量的词,默认为0
collocation_threshold 默认为30,整体搭配的评分等级

3、WordCloud类方法详解

方法 功能
fit_words() 根据词频生成词云
generate_from_frequencies() 根据词频生成词云
generate() 根据文本生成词云
generate_from_text() 根据文本生成词云
process_text() 将长文本分词,并去除屏蔽词
recolor() 对输出颜色重新着色
to_array() 转换为numpy数组
to_file() 保存为图片文件
to_svg() 保存为SVG(可缩放矢量图形)

四、实例

1、简单图案

代码:


import wordcloud

# 词云使用的文字
text = "lemon"

# 使用wordcloud.WordCloud类,并传入相关的参数
wc = wordcloud.WordCloud(background_color="white", repeat=True)
wc.generate(text)

# 保存图片
wc.to_file('test1.png')

2、自定义图片

代码:


import wordcloud

# 导入imageio库中的imread函数,并用这个函数读取本地图片,作为词云形状图片
import imageio
mk = imageio.imread("333.jpg")

# 词云使用的文字
text = "lemon"

# 使用wordcloud.WordCloud类,并传入相关的参数
wc = wordcloud.WordCloud(background_color="white", repeat=True,mask=mk)
wc.generate(text)

# 保存图片
wc.to_file('test1.png')

3、从文本读取

代码:


import wordcloud
import jieba

# 导入imageio库中的imread函数,并用这个函数读取本地图片,作为词云形状图片
import imageio
mk = imageio.imread("chen.jpg")

# 使用wordcloud.WordCloud类,并传入相关的参数
wc = wordcloud.WordCloud(background_color="white",
                         prefer_horizontal=0.5,
                         repeat=True,
                         mask=mk,
                         font_path='/System/Library/Fonts/STHeiti Light.ttc',
                         contour_width=2,
                         contour_color='pink',
                         collocation_threshold=100,
                         )

# 对来自外部文件的文本进行中文分词,得到string
f = open('Gong.txt', encoding='utf-8')
txt = f.read()
txtlist = jieba.lcut(txt)
string = " ".join(txtlist)

# 将string变量传入w的generate()方法,给词云输入文字
wc.generate(string)

# 保存图片
wc.to_file('test.png')



总结

到此这篇关于Python词云的正确实现方法的文章就介绍到这了,更多相关Python词云实现内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

--结束END--

本文标题: Python词云的正确实现方法实例

本文链接: https://lsjlt.com/news/125436.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • Python词云的正确实现方法实例
    一、相关模块 jieba:中文分词 wordcloud :Python词云库 imageio:读取图形数据 安装: pip install jieba pi...
    99+
    2024-04-02
  • python爬虫之代理ip正确使用方法实例
    目录代理ip原理输入网址后发生了什么呢?代理ip做了什么呢? 为什么要用代理呢?爬虫代码中使用代理ip检验代理ip是否生效 未生效问题排查1.请求协议不匹配2.代...
    99+
    2024-04-02
  • SpringBoot实现优雅停机的正确方法
    目录一、介绍二、方案实践2.1 方法一 通过Actuator的Endpoint机制关闭服务2.2 方法二 使用ApplicationContext的close方法关闭服务2.3 方法...
    99+
    2023-01-30
    SpringBoot实现优雅停机 SpringBoot优雅停机 SpringBoot停机
  • 实现正确实现Python调用jar包
    博主最近在做python的项目,需要调用jar包,但是虽然参考了网上很多的教程,但是有一点是无法解决,那就是用python无法启动jvm虚拟机!!!这是所有工作的前提,重装了好多次也没有解决,最后请教大佬解决了。 问题的关键点在于:电脑的...
    99+
    2023-01-31
    正确 Python jar
  • 用python实现词云效果实例介绍
    目录什么是词云一、特效预览二、程序原理三、程序源码总结什么是词云 词云其实就是就是对网络文本中出现频率较高的〝关键词〞予以视觉上的突出,形成〝关键词云层〞或〝关键词渲染〞从而过滤掉大...
    99+
    2024-04-02
  • TypeScript中正确使用interface和type的方法实例
    目录前言interface type 附:interface和type不同点总结前言 interface 和 type 都是用来定义类型,可以理解定义 shape ,那么 shape...
    99+
    2024-04-02
  • Python中怎么正确实现一个算法
    本篇文章给大家分享的是有关Python中怎么正确实现一个算法,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。Python算法具体操作代码示例:# -*- co...
    99+
    2023-06-17
  • JS中数据类型的正确判断方法实例
    目录前言 typeof是否能正确判断类型? instanceof是否能正确判断类型? Object.prototype.toString.call() constructor Arr...
    99+
    2024-04-02
  • Python实现词云图词频统计
    目录一:安装必要的库二:数据分析 条形图可视化三:数据分析 词频统计 词云图可视化一:安装必要的库 导入必要的库 import collections # 词频统计库 import...
    99+
    2022-12-26
    Python词云图词频统计 Python词云图 Python 词频统计
  • 利用python实现命令行有道词典的方法示例
    前言 由于一直用Linux系统,对于词典的支持特别不好,对于我这英语渣渣的人来说,当看英文文档就一直卡壳,之前用惯了有道词典,感觉很不错,虽然有网页版的但是对于全站英文的网页来说并不支持。索性自己实现一个,...
    99+
    2022-06-04
    示例 命令行 词典
  • vue中使用词云图的实现方法
    这篇文章将为大家详细讲解有关vue中使用词云图的实现方法,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。在vue中, 查找到有两种方法来实现词云图, 分别是echarts 和 highchar...
    99+
    2023-06-29
  • 如何理解Python程序转为EXE文件的正确实现方法
    这篇文章给大家介绍如何理解Python程序转为EXE文件的正确实现方法,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。在Python编程语言中,开发出的程序可以转换成EXE文件来实现一些特定的操作。在这里我们将会为大家详...
    99+
    2023-06-17
  • Python 敏感词过滤的实现示例
    目录 一个简单的实现使用BSF(宽度优先搜索)进行实现 使用DFA(Deterministic Finite Automaton)进行实现  一个简单的实现 主要...
    99+
    2024-04-02
  • Redis分布式锁的正确实现方式
    Redis分布式锁的正确实现方式?很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。可靠性首先,为了确保分布式锁可用,我们至少要确保...
    99+
    2024-04-02
  • Spring原生Rpc六种的正确打开方式实现示例
    目录前言什么是Rpc?Spring中的Rpc定义服务接口调用服务代码WEBSERVICE的RPC实现服务提供者服务实现服务暴露服务消费者HTTP的RPC实现服务提供者服务实现服务暴露...
    99+
    2024-04-02
  • 微信小程序中正确使用地图的方法实例
    目录前言1. 准备2. 实战2.1 配置小程序权限2.2 封装工具函数2.2.1 全局函数与变量2.2.2 工具函数2.3 跳转选址页面前的处理2.4 跳转后的处理2.4.1 页面初...
    99+
    2024-04-02
  • Python中文分词实现方法(安装pymmseg)
    本文实例讲述了Python中文分词实现方法。分享给大家供大家参考,具体如下: 在Python这pymmseg-cpp 还是十分方便的! 环境 ubuntu10.04 , python2.65 步骤: 1 下...
    99+
    2022-06-04
    分词 中文 方法
  • Android边框裁切的正确姿势实现示例
    目录前言1. 设置圆角边框2. 使用ClipToOutline进行裁切总结前言 今天写什么呢,没有太好的思路,就随便写一些细节的点吧。 平时我们都会接触到的一个东西就是设置view...
    99+
    2023-02-16
    Android边框裁切 Android 边框
  • vue项目中按需引入element-ui的正确实现方法
    目录vue中按需引入element-ui的正确方法elementui完整引入及按需引入项目开发完整引入按需引入总结vue中按需引入element-ui的正确方法 1. 创建vue项目...
    99+
    2023-01-10
    vue引入element-ui vue element-ui vue项目引入element-ui
  • Node输出日志的正确方法示例
    目录背景使用 Winston 进行日志记录安装和使用 WinstonWinston 的日志级别Winston 的格式化器Winston 的传输器Winston的实践接入es注意事项背...
    99+
    2023-03-06
    Node输出日志 Node 日志
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作