使用python实现个性化词云的方法
作者:baddog_ 发布时间:2021-08-27 03:46:59
标签:python,词云
先上图片
词云图
需要模板
pip install jieba
pip install wordcloud
还需要安装另外两个东西这两个我也不太懂借鉴百度写上去的
pip install scipy
pip install matplotlib
因为用ubuntu系统所有没有windows那么麻烦,也没有那么多报错
看到好多人制作自己的词云有没有一丝丝的激动啊,有激动就要马上去做,冲动才是第一创造力。
jieba是一款很恨很好用的中文分词模板
jeiba中文文档
至于wordcloud没有中文文档不过咱会猜啊,英文不好咱们可以猜啊,查看源代码猜。
先把我全部代码贡献上来
#-*-coding:utf-8—-*-
import jieba.analyse
from wordcloud import WordCloud,ImageColorGenerator
from scipy.misc import imread
import matplotlib.pyplot as plt
class wc:
def __init__(self,txt_file,img_file,font_file):
self.f = open(txt_file,'r')
self.txt = self.f.read()
self.f.close()
self.tags = jieba.analyse.extract_tags(self.txt,topK=100)
#topK说白了就是返回几个关键词
self.text = ' '.join(self.tags) #把分词链接起来,加空格因为英文靠空格分词
self.img = imread(img_file)
self.wc = WordCloud(font_path=font_file,background_color='white',max_words=100,mask=self.img,max_font_size=80)
###直接在这里进行猜###
#font_path指的是字体文件路径,因为wordcloud自带的字体不支持中文所以我们要指定一个字体文件,否者输出的图片全是框框
#background_color 默认是黑色我设置成白色
#max_words最大显示的词数
#mask 背景图片
#max_font_size最大字体字号
self.word_cloud = self.wc.generate(self.text)
def show_wc(self):
#img_color = ImageColorGenerator(self.img)
plt.imshow(self.word_cloud)
#可以通过 plt.imshow(self.wc.recolor(color_func=img_color))使图片颜色跟字体颜色一样
plt.axis("off")
plt.show()
if __name__=='__main__':
mywc = wc('sanwen.txt','out.png','font.ttc')
mywc.show_wc()
使用wc.recolor(color_func=img_color)
来源:http://www.jianshu.com/p/e39b37914f38
0
投稿
猜你喜欢
- Window.ShowModalDialog使用手册 基本介绍: showModalDialog() (IE 4+ 支持) sho
- 基本概念简单地说,Node.js是在服务器端运行的JavaScript。 节点。$ node> console.log('He
- 在日常的开发中经常进行跨数据库进行查询数据。同服务器下跨数据库进行查询在表前加上数据库名就可以查询到数据。在数据超出服务器承载的时候,往往需
- 一、色彩空间的转换代码如下:#色彩空间转换import cv2 as cvdef color_space_demo(img):
- OR、in和union all 查询效率到底哪个快?网上很多的声音都是说union all 快于 or、in,因为or、in会导致全表扫描,
- 问题分析为了提高系统的吞吐量,很多环节下对于数据库的写入是多线程,甚至是多进程的。为了保证写入成功,在很多情况下需要多次重试。这就会带来一个
- python的字符串编码识别模块(第三方库):官方地址: http://pypi.python.org/pypi/chardetimport
- 起步Django 是个同步框架,本文并不是 让 Django 变成异步框架。而是对于在一个 view 中需要请求多次 http api 的场
- MYSQL对大小写敏感见字如面,见标题知内容。你有遇到过因为MYSQL对大小写敏感而被坑的体验吗?之前看过阿里巴巴Java开发手册,在MyS
- Go mod开启 Go Modulego env -w GO111MODULE=on或set GO111MODULE=on设置Go Prox
- 一、在 VS Code 中配置调试使用 Vue CLI 2搭建项目时:更新 config/index.js 内的 devtool prope
- 传参时传递可变对象,实际上传的是指向内存地址的指针/引用这个标题是我的结论,也是我在做项目过程查到的。学过C的都知道,函数传参可以传值,也可
- .Net新手通常容易把属性(Property)跟特性(Attribute)搞混,其实这是两种不同的东西属性指的类中封装的数据字段;而特性是对
- 前言defer语句被用于预定对一个函数的调用。我们把这类被defer语句调用的函数称为延迟函数。而defer 延迟语句在其他编程语言里好像没
- SQL语句参考及记录集对象详解1. ASP与Access数据库连接:2. ASP与SQL数据库连接:建立记录集对象:set rs=serve
- 零、配置Tomcat默认情况下Tomcat是没有配置用户角色权限的但是,后续Jenkins部署项目到Tomcat服务器,需要用到Tomcat
- 一、.NET Framework Data Provider for SQL Server类型:.NET Framework类库使用:Sys
- date("yyyyMMdd",time()) date() 函数功能:用于格式化时间,返回一个字符串。&nb
- 1、查询锁情况select sid,serial#,event,BLOCKING_SESSION from v$session where
- 最近在做一个手机站,要求点击分享可以直接打开微信分享出去。而不是jiathis,share分享这种的点击出来二维码。在网上看了很多,都说AP