利用python 制作词云特效详情

 更新时间:2022年04月02日 15:27:05   作者:autofelix  
这篇文章主要介绍了利用python 制作词云特效详情,​词云​也是数据可视化的一种形,根据关键词的出现频率而生成的一幅图像,人们只要扫一眼就能够明白其文章主旨,下文详细介绍,需要的朋友可以参考一下

什么是 ​词云

词云​ 其实就是就是对网络文本中出现频率较高的〝关键词〞予以视觉上的突出,形成〝关键词云层〞或〝关键词渲染〞从而过滤掉大量的文本信息

词云​ 也是数据可视化的一种形式。给出一段文本,根据关键词的出现频率而生成的一幅图像,人们只要扫一眼就能够明白其文章主旨。

一、特效预览

词云图:

python 特效之词云制作_python特效

二、程序原理

  • 从给出的文本中,进行分词处理,然后将每个词出现的的频率进行统计
  • 从给出的背景图片上,读出图片信息
  • 将文本按照出现的频率进行画图,出现频率越高,字体设置越大

python 特效之词云制作_python特效_02

你学废了嘛

三、程序源码

  • jieba模块:用来进行分词处理
  • PIL模块:用来进行图片处理
  • wordcloud模块:用来进行生成词云
#!/usr/bin/env python
# encoding: utf-8

import jieba
import numpy as np
import PIL.Image as Image
from wordcloud import WordCloud

class wordCloud:
'''
This is a main Class, the file contains all documents.
One document contains paragraphs that have several sentences
It loads the original file and converts the original file to new content
Then the new content will be saved by this class
'''
def __init__(self):
self.bg_img = 'assets/picture.jpeg'
self.word_path = 'assets/word.txt'

def hello(self):
'''
This is a welcome speech
:return: self
'''
print('*' * 50)
print(' ' * 20 + '词云制作')
print(' ' * 5 + 'Author: autofelix Date: 2022-01-17 13:14')
print('*' * 50)
return self

def run(self):
'''
The program entry
'''
with open(self.word_path, 'r') as f:
word = f.read()

cut_word = ' '.join(jieba.cut(word))
color_mask = np.array(Image.open(self.bg_img))

word_cloud = WordCloud(
# 设置字体,不指定就会出现乱码
font_path='/System/Library/Fonts/PingFang.ttc',
# 设置背景色
background_color='white',
# 词云形状
mask=color_mask,
# 允许最大词汇
max_words=120,
# 最大号字体
max_font_size=2000
).generate(cut_word)

word_cloud.to_file('word_cloud.jpg')
im = word_cloud.to_image()
im.show()


if __name__ == '__main__':
wordCloud().hello().run()

到此这篇关于利用python 制作词云特效详情的文章就介绍到这了,更多相关python 制作词云特效内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Python使用execjs执行包含中文参数的JavaScript

    Python使用execjs执行包含中文参数的JavaScript

    爬虫的开发过程中,往往需要对JS进行模拟,简单或者通用的还可以在Python中模拟或者找到对应的第三方库,但是复杂的就可能不好实现了,下面这篇文章主要给大家介绍了关于Python使用execjs执行包含中文参数的JavaScript的相关资料,需要的朋友可以参考下
    2022-03-03
  • python生成lmdb格式的文件实例

    python生成lmdb格式的文件实例

    今天小编就为大家分享一篇python生成lmdb格式的文件实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-11-11
  • Python islower()函数的使用详解

    Python islower()函数的使用详解

    这篇文章主要介绍了Python islower()函数使用方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2023-07-07
  • python实现会员管理系统

    python实现会员管理系统

    这篇文章主要为大家详细介绍了python实现会员管理系统,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2022-03-03
  • 使用Django Form解决表单数据无法动态刷新的两种方法

    使用Django Form解决表单数据无法动态刷新的两种方法

    这篇文章主要介绍了使用Django Form解决表单数据无法动态刷新的两种方法,需要的朋友可以参考下
    2017-07-07
  • python的scipy.stats模块中正态分布常用函数总结

    python的scipy.stats模块中正态分布常用函数总结

    在本篇内容里小编给大家整理的是一篇关于python的scipy.stats模块中正态分布常用函数总结内容,有兴趣的朋友们可以学习参考下。
    2021-02-02
  • Eclipse配置python默认头过程图解

    Eclipse配置python默认头过程图解

    这篇文章主要介绍了Eclipse配置python默认头过程图解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-04-04
  • Python采集二手车数据的超详细讲解

    Python采集二手车数据的超详细讲解

    这篇文章主要为大家介绍了Python采集二手车数据实现的超详细讲解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • Python实现的堆排序算法示例

    Python实现的堆排序算法示例

    这篇文章主要介绍了Python实现的堆排序算法,结合实例形式分析了堆排序的原理及Python定义与使用堆排序算法的相关操作技巧,需要的朋友可以参考下
    2018-04-04
  • python封装json格式字符串并处理单双引号问题

    python封装json格式字符串并处理单双引号问题

    大家好,本篇文章主要讲的是python封装json格式字符串并处理单双引号问题,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下
    2022-02-02

最新评论