python词云设计实例_python词云库wordcloud的使用方法与实例详解

wordcloud是优秀的词云展示第三方库

h4zdmkeqrvq.png

一、基本使用

import jieba

import wordcloud

txt = open("1.txt", "r", encoding='utf-8').read()

words = jieba.lcut(txt)

txt_1 = " ".join(words)

# print(txt1)

w = wordcloud.WordCloud(font_path="msyh.ttc",

width=1000, height=700, background_color="white",

)

w.generate(txt_1)

w.to_file("ciyun.png")

二、按图片形状生成

import jieba

from wordcloud import WordCloud, STOPWORDS, ImageColorGenerator

import numpy as np

from PIL import Image

txt = open("C:/Users/96356/Desktop/1.txt", "r", encoding='utf-8').read()

words = jieba.lcut(txt)

txt_1 = " ".join(words)

photo = np.array(Image.open('C:/Users/96356/Desktop/2.png'))

# from scipy.misc import imread

# china=imread('C:/Users/96356/Desktop/2.png') #scipy.misc方式都可以读取图片

w = WordCloud(font_path="msyh.ttc",

mask=photo,

background_color="white",

)

w.generate(txt_1)

w.to_file("ciyun.png")

三、WordCloud参数详解

from wordcloud import WordCloud

参数

作用

font_path

字体路径,需要展现什么字体就把该字体路径+后缀名写上,如:font_path = ‘黑体.ttf'

width

输出的画布宽度,默认为400像素

height

输出的画布高度,默认为200像素

prefer_horizontal

词语水平方向排版出现的频率,默认 0.9 (所以词语垂直方向排版出现频率为 0.1 )

mask

如果参数为空,则使用二维遮罩绘制词云。如果 mask 非空,设置的宽高值将被忽略,遮罩形状被 mask 取代。除全白(#FFFFFF)的部分将不会绘制,其余部分会用于绘制词云。如:bg_pic = imread(‘读取一张图片.png'),背景图片的画布一定要设置为白色(#FFFFFF),然后显示的形状为不是白色的其他颜色。可以用ps工具将自己要显示的形状复制到一个纯白色的画布上再保存,就ok了。一般为mask=np.array(Image.open(‘xxx.jpg'))。其中from PIL import Image

scale

按照比例进行放大画布,如设置为1.5,则长和宽都是原来画布的1.5倍

min_font_size

显示的最小的字体大小

font_step

字体步长,如果步长大于1,会加快运算但是可能导致结果出现较大的误差

max_words

要显示的词的最大个数

stopwords

设置需要屏蔽的词,如果为空,则使用内置的STOPWORDS

background_color

背景颜色,如background_color=‘white',背景颜色为白色

max_font_size

显示的最大的字体大小

mode

当参数为“RGBA”并且background_color不为空时,背景为透明

relative_scaling

词频和字体大小的关联性

color_func

生成新颜色的函数,如果为空,则使用 self.color_func

regexp

使用正则表达式分隔输入的文本

collocations

是否包括两个词的搭配

colormap

给每个单词随机分配颜色,若指定color_func,则忽略该方法

random_state

为每个单词返回一个PIL颜色

其他部分函数

函数

作用

fit_words(frequencies)

根据词频生成词云

generate(text)

根据文本生成词云

generate_from_frequencies(frequencies[, …])

根据词频生成词云

generate_from_text(text)

根据文本生成词云

process_text(text)

将长文本分词并去除屏蔽词(此处指英语,中文分词还是需要自己用别的库先行实现,使用上面的 fit_words(frequencies) )

recolor([random_state, color_func, colormap])

对现有输出重新着色。重新上色会比重新生成整个词云快很多

to_array()

转化为 numpy array

to_file(filename)

输出到文件

更多关于python词云库wordcloud的使用方法请查看下面的相关文章

本文标题: python词云库wordcloud的使用方法与实例详解

本文地址: http://www.cppcns.com/jiaoben/python/300704.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/488552.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

细胞因子风暴与新冠肺炎

来源:陈辉科学网博客链接地址:http://blog.sciencenet.cn/blog-3426569-1219679.html 2020年2月15日下午,在国务院联发联控机制新闻发布会上,周琪院士介绍说“炎症因子风暴”[作者注释:即是细胞因子风暴(Cy…

mysql 启动 修改密码_基础的启动/停止/重启/密码修改MySQL

如何启动/停止/重启MySQL一、启动方式1、使用 service 启动:service mysqld start2、使用 mysqld脚本启动:/etc/inint.d/mysqld start3、使用 safe_mysqld启动:safe_mysqld&二、停止1、使用 service 启动:service mysqldstop2…

预编译对象解决SQL注入问题

转载于:https://www.cnblogs.com/suanshun/p/6739454.html

eclipse中添加jar包后运行时提示noclassdeffounderror_一看你就懂,超详细 java 中的 ClassLoader 详解,耐心看~...

备注:本文篇幅比较长,但内容简单,大家不要恐慌,安静地耐心翻阅就是Class文件的认识我们都知道在Java中程序是运行在虚拟机中,我们平常用文本编辑器或者是IDE编写的程序都是.java格式的文件,这是最基础的源码…

寻找人机之间的中间地带-评述3本人机协作的书

来源: 混沌巡洋舰1 AI 错觉知其然,更要知其所以然,了解数据挖掘的算法的基础原理,可以在这个人工智能和大数据可能比工业革命更能改变人的一生的历史时期中,更有智慧的应用人工智能。AI错觉这本书18年在美国出版&#…

TypeError: HashUpdate fail

关于crypto的md5加密报错: 代码: var crypto require(crypto); var md5 crypto.createHash(md5); //crypto模块功能是加密并生成各种散列 var oldpass md5.update(oldpass).digest(hex); var newpass md5.update(newpass).digest(hex);如果md5.updat…

mysql 与gemfire的同步_(转)分布式缓存GemFire架构介绍

1什么是GemFireGemFire是一个位于应用集群和后端数据源之间的高性能、分布式的操作数据(operational data)管理基础架构。它提供了低延迟、高吞吐量的数据共享和事件分发。GemFire充分利用网络中的内存和磁盘资源,形成一个实时的数据网格(data fabric or grid)。Gem…

混合云关键技术能力和发展趋势

来源:IDC圈为满足成本、按需、隐私、合规、避免供应商锁定等目的,企业常常会采用多个公有云或私有云,这会造成基础设施资源池多样化,还要面临同时管理物理机、虚拟化等异构资源环境。多云管理由于面临同时管理物理机、虚拟化等异构…

文字竖着写怎么设置_微信置顶文字怎么设置 微信置顶文字的方法介绍|微信|置顶软硬件资讯川北在线...

阅读本文前,请您先点击上面的“蓝色字体”,再点击“关注”,这样您就可以继续免费收到文章了。每天都会有分享,都是免费订阅,请您放心关注。注:本文转载自网络,不代表本平台立场,仅供…

DOM查找元素的方法总结

按HTML查找:优点:范围可大可小,可设置条件;包括五种方式:1.按id查找;2.按标签名查找:var elems parent.getElementsByTagName();3.按name属性查找:要回传给服务器的元素需要name属性…

2019 NLP大全:论文、博客、教程、工程进展全梳理(长文预警)

来源:机器学习研究会订阅号在整个2019年,NLP领域都沉淀了哪些东西?有没有什么是你错过的?如果觉得自己梳理太费时,不妨看一下本文作者整理的结果。2019 年对自然语言处理(NLP)来说是令人印象深刻…

collection集合 地址_java集合系列(5)LinkedList

这篇文章开始介绍LinkList。他和ArrayList有一些相似,在上一篇文章讲解 ArrayList时,我们知道ArrayList是以数组实现,它的优势是查询性能高,劣势是按顺序增删性能差。如果在不确定元素数量的情况时,不建议使用ArrayLis…

meanshift算法 java_Meanshift,聚类算法

记得刚读研究生的时候,学习的第一个算法就是meanshift算法,所以一直记忆犹新,今天和大家分享一下Meanshift算法,如有错误,请在线交流。Mean Shift算法,一般是指一个迭代的步骤,即先算出当前点的偏移均值,移动该点到其偏…

python 数据分析 电信_实例 | 教你用Python写一个电信客户流失预测模型

原标题:实例 | 教你用Python写一个电信客户流失预测模型CDA数据分析师 出品 作者:真达、Mika 数据:真达 【导读】 今天教大家如何用Python写一个电信用户流失预测模型。公众号后台,回复关键字“电信”获取完整数据。 之前我们用Py…

人机融合智能与深度态势感知

来源:人机与认知实验室【“常无欲以观其妙,常有欲以观其徼。”,意思是身处物外可以以旁观者的身份来看待事物,身处事内则要考虑各种极限。】0 引言伴随着深度学习[1]、强化学习[2]等新一代人工智能技术的发展,智能化已…

java大数模板_java大数模板

这几天做了几道用大数的题,发现java来做大数运算十分方便。对acmer来说是十分实用的1.valueOf(parament); 将参数转换为制定的类型比如 int a3;BigInteger bBigInteger.valueOf(a);则b3;String s”12345”;BigInteger cBigInteger.valueOf(s);则c12345;2…

20162317 2016-2017-2 《程序设计与数据结构》第8周学习总结

20162317 2016-2017-2 《程序设计与数据结构》第8周学习总结 教材学习内容总结 1.异常的定义(中断正常指令的事件) 2.异常的特点(异常是对象) 3.异常的分类(CheckedExcception 和 UncheckedException) 4.异…

sql return的用法_【实用技能】Seacms 8.7版本SQL注入分析

有些小伙伴刚刚接触SQL编程,对SQL注入表示不太了解。其实在Web攻防中,SQL注入就是一个技能繁杂项,为了帮助大家能更好的理解和掌握,今天小编将要跟大家分享一下关于Seacms 8.7版本SQL注入分析的内容,一定要认真学习哦。…

国科大UCAS胡包钢教授《信息论与机器学习》课程第二讲:信息论基础一

来源:专知信息论中最为基本的概念就是香农熵(第8页),由此可以导出信息论中其它各种定义,以至我们常规应用的其它经验式定义(以后会提到)。学习信息论基础知识时要避免仅是概念与定义的简单记忆&…

通讯录分组名称大全简单_公司起名取名:建筑公司名称大全简单大气

阅读本文前,请您先点击上面的“蓝色字体”再点击关注,这样您就可以继续免费收取到文章了,每天都有分享,完全是免费订阅,请放心关注。时代在变迁,人们的生活节奏在加快,各类楼盘高低错落&#xf…