只用Python就可以制作的简单词云


Posted in Python onJune 07, 2021

一、准备

词云制作所必需的三个包:

安装:pip install matplotlib
安装:pip install jieba
安装:pip install wordcloud

(可能还需要其他包:pip install numpy等等,可以自行添加)

二、英文词云

test.txt文本内容:

python python3 is good well bestbast shell cool
Age has reached the end of the beginning of a word. May be guilty in his seems to passing a lot of different life became the appearance of the 
same day; May be backto oneself the paranoid weird belief disillusionment, these days, my mind has been very messy, in my mind constantly. Always 
feel oneself should go to do something, or write something. Twenty years of life trajectory deeply shallow, suddenly feel something, do it.The end 
of our life, and can meet many things really do?During myhood, think lucky money and new clothes are necessary for New Year, but as the advance of 
the age, will be more and more found that those things are optional; Junior high school, thought to have a crush on just means that the real growth,
but over the past three years later, his writing of alumni in peace, suddenly found that isn't really grow up, it seems is not so important; Then 
in high school, think don't want to give vent to out your inner voice can be in the high school children of the feelings in a period, but was event
ually infarction when graduation party in the throat, later again stood on the pitch he has sweat profusely, looked at his thrown a basketball hoops
, suddenly found himself has already can't remember his appearance.

源代码:

import matplotlib.pyplot as plt  # 在任何绘图之前,我们需要一个figure对象,可以理解成我们需要一张画板才能开始绘图
import jieba  # jieba库是中文分词的第三方库(中文文本需要通过分词获得单个的词语)
from wordcloud import WordCloud  # 导入wordcloud库

text = open(r'test.txt', "r").read()  # 读入txt文本数据,在字符串前面加上字符r或R之后表示原始字符串,字符串中的任意字符都不再进行转义,后一个r表示“只读”
cut_text = jieba.cut(text)  # 结巴中文分词,生成字符串,默认精确模式,如果不通过分词,无法直接生成正确的中文词云
result = " ".join(cut_text)  # 必须给个符号分隔开分词结果来形成字符串,否则不能绘制词云
# join函数的用法:'sep'.join(seq)参数说明:sep:分隔符。可以为空;seq:要连接的元素序列、字符串、元组、字典;即:以sep作为分隔符,将seq所有的元素合并成一个新的字符串

# 生成词云图,这里需要注意的是WordCloud默认不支持中文,所以这里需已下载好的中文字库
# 无自定义背景图:需要指定生成词云图的像素大小,默认背景颜色为黑色,统一文字颜色:mode='RGBA'和colormap='pink'
wc = WordCloud(
    # 设置字体,不指定就会出现乱码
    background_color='white',  # 设置背景色,默认为黑色
    width=500,  # 设置背景宽
    height=350,  # 设置背景高
    max_font_size=50,  # 最大字体
    min_font_size=10,  # 最小字体
    mode='RGBA'  # 当参数为“RGBA”并且background_color不为空时,背景为透明
)
wc.generate(result)  # 根据分词后的文本产生词云
wc.to_file(r"wordcloud.png")  # 保存绘制好的词云图
plt.imshow(wc)  # 以图片的形式显示词云
plt.axis("off")  # 关闭图像坐标系,即不显示坐标系
plt.show()  # plt.imshow()函数负责对图像进行处理,并显示其格式,但是不能显示。其后必须有plt.show()才能显示

效果展示:

只用Python就可以制作的简单词云

三、中文词云

pkq.jpg模板内容:

只用Python就可以制作的简单词云

poem.txt文本内容:

君不见黄河之水天上来,奔流到海不复回。
君不见高堂明镜悲白发,朝如青丝暮成雪。
人生得意须尽欢,莫使金樽空对月。
天生我材必有用,千金散尽还复来。
烹羊宰牛且为乐,会须一饮三百杯。
岑夫子,丹丘生,将进酒,杯莫停。
与君歌一曲,请君为我侧耳听。
钟鼓馔玉不足贵,但愿长醉不复醒。
古来圣贤皆寂寞,惟有饮者留其名。
陈王昔时宴平乐,斗酒十千恣欢谑。
主人何为言少钱,径须沽取对君酌。
五花马,千金裘,
呼儿将出换美酒,与尔同销万古愁。
床前明月光,疑是地上霜。
举头望明月,低头思故乡。
海客谈瀛洲,烟涛微茫信难求。
越人语天姥,云霞明灭或可睹。
天姥连天向天横,势拔五岳掩赤城。
天台四万八千丈,对此欲倒东南倾。
我欲因之梦吴越,一夜飞度镜湖月。
湖月照我影,送我至剡溪。
谢公宿处今尚在,渌水荡漾清猿啼。
脚著谢公屐,身登青云梯。
半壁见海日,空中闻天鸡。
千岩万转路不定,迷花倚石忽已暝。
熊咆龙吟殷岩泉,栗深林兮惊层巅。
云青青兮欲雨,水澹澹兮生烟。
列缺霹雳,丘峦崩摧。洞天石扉,訇然中开。
青冥浩荡不见底,日月照耀金银台。
霓为衣兮风为马,云之君兮纷纷而来下。
虎鼓瑟兮鸾回车,仙之人兮列如麻。
忽魂悸以魄动,恍惊起而长嗟。
惟觉时之枕席,失向来之烟霞。
世间行乐亦如此,古来万事东流水。
别君去兮何时还,且放白鹿青崖间,
须行即骑访名山。安能摧眉折腰事权贵,
使我不得开心颜

源代码:

import wordcloud
import numpy as np
from PIL import Image # Image模块是在Python PIL图像处理常用的模块
import jieba

pic = Image.open("pkq.jpg")  # 打开图片路径,形成轮廓
shape = np.array(pic)  # 图像轮廓转换为数组
wc = wordcloud.WordCloud(mask=shape, font_path="simkai.ttf", background_color="white",
                         max_font_size=100)  # mask为图片背景,font_path为字体,若不设置可能乱码

text = open(r'poem.txt', "r", encoding='UTF-8').read()  # 对中文应该设置编码方式为utf—8
cut_text = jieba.cut(text)
result = " ".join(cut_text)
wc.generate(result)
wc.to_file("cloud.jpg")

效果图:

只用Python就可以制作的简单词云

到此这篇关于只用Python就可以制作的简单词云的文章就介绍到这了,更多相关Python制作词云内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python学习小技巧之利用字典的默认行为
May 20 Python
python matplotlib绘图,修改坐标轴刻度为文字的实例
May 25 Python
PyTorch学习笔记之回归实战
May 28 Python
Python3利用print输出带颜色的彩色字体示例代码
Apr 08 Python
VPS CENTOS 上配置python,mysql,nginx,uwsgi,django的方法详解
Jul 01 Python
python 执行终端/控制台命令的例子
Jul 12 Python
python dataframe NaN处理方式
Dec 26 Python
基于python3抓取pinpoint应用信息入库
Jan 08 Python
django模型动态修改参数,增加 filter 字段的方式
Mar 16 Python
python获取系统内存占用信息的实例方法
Jul 17 Python
Python深度学习之实现卷积神经网络
Jun 05 Python
使用python+pygame开发消消乐游戏附完整源码
Jun 10 Python
python通过函数名调用函数的几种方法总结
Jun 07 #Python
Python爬虫实战之爬取京东商品数据并实实现数据可视化
Python实现的扫码工具居然这么好用!
Jun 07 #Python
忆童年!用Python实现愤怒的小鸟游戏
python单元测试之pytest的使用
Jun 07 #Python
Python趣味实战之手把手教你实现举牌小人生成器
怎么用Python识别手势数字
You might like
php中截取字符串支持utf-8
2007/01/18 PHP
php在线代理转向代码
2012/05/05 PHP
用php实现百度网盘图片直链的代码分享
2012/11/01 PHP
提交表单后 PHP获取提交内容的实现方法
2016/05/25 PHP
csdn 博客中实现运行代码功能实现
2009/08/29 Javascript
JavaScript前端图片加载管理器imagepool使用详解
2014/12/29 Javascript
jquery中filter方法用法实例分析
2015/02/06 Javascript
详解js中Json的语法与格式
2016/11/22 Javascript
easyUI实现类似搜索框关键词自动提示功能示例代码
2016/12/27 Javascript
JavaScript原生节点操作小结
2017/01/17 Javascript
Vue.js 2.0中select级联下拉框实例
2017/03/06 Javascript
解决vue多个路由共用一个页面的问题
2018/03/12 Javascript
Vue使用路由钩子拦截器beforeEach和afterEach监听路由
2020/11/16 Javascript
[39:02]DOTA2亚洲邀请赛 3.31 小组赛 B组 Mineski vs VGJ.T
2018/04/01 DOTA
python微信跳一跳系列之自动计算跳一跳距离
2018/02/26 Python
用Python+OpenCV对比图像质量的几种方法
2019/07/15 Python
Python 实现数据结构-循环队列的操作方法
2019/07/17 Python
python PyQt5/Pyside2 按钮右击菜单实例代码
2019/08/17 Python
Python实现把多维数组展开成DataFrame
2019/11/30 Python
Django用数据库表反向生成models类知识点详解
2020/03/25 Python
Python+Django+MySQL实现基于Web版的增删改查的示例代码
2020/05/13 Python
Python实现敏感词过滤的4种方法
2020/09/12 Python
HTML5 通信API 跨域门槛将不再高、数据推送也不再是梦
2013/04/25 HTML / CSS
新加坡航空官方网站:Singapore Airlines
2016/10/13 全球购物
ghd澳大利亚官方网站:英国最受欢迎的美发工具品牌
2018/05/21 全球购物
J2ee常用的设计模式?说明工厂模式
2015/05/21 面试题
党的群众路线教育实践活动宣传方案
2014/02/23 职场文书
爱与责任演讲稿
2014/05/20 职场文书
施工安全汇报材料
2014/08/17 职场文书
群众路线党员个人剖析材料
2014/10/08 职场文书
学习党章的体会
2014/11/07 职场文书
2015年小学体育工作总结
2015/05/22 职场文书
建立共青团委员会的请示
2019/04/02 职场文书
Redis 哨兵集群的实现
2021/06/18 Redis
你真的了解redis为什么要提供pipeline功能
2021/06/22 Redis
MySQL空间数据存储及函数
2021/09/25 MySQL