只用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过滤函数filter()使用自定义函数过滤序列实例
Aug 26 Python
python中的字典详细介绍
Sep 18 Python
python爬虫框架talonspider简单介绍
Jun 09 Python
对pandas中to_dict的用法详解
Jun 05 Python
Python提取频域特征知识点浅析
Mar 04 Python
Python爬虫爬取Bilibili弹幕过程解析
Oct 10 Python
Python二维数组实现求出3*3矩阵对角线元素的和示例
Nov 29 Python
基于python实现ROC曲线绘制广场解析
Jun 28 Python
pandas to_excel 添加颜色操作
Jul 14 Python
Python绘图实现台风路径可视化代码实例
Oct 23 Python
Python数据分析库pandas高级接口dt的使用详解
Dec 11 Python
TensorFlow的环境配置与安装方法
Feb 20 Python
python通过函数名调用函数的几种方法总结
Jun 07 #Python
Python爬虫实战之爬取京东商品数据并实实现数据可视化
Python实现的扫码工具居然这么好用!
Jun 07 #Python
忆童年!用Python实现愤怒的小鸟游戏
python单元测试之pytest的使用
Jun 07 #Python
Python趣味实战之手把手教你实现举牌小人生成器
怎么用Python识别手势数字
You might like
WindowsXP中快速配置Apache+PHP5+Mysql
2008/06/05 PHP
PHP自动识别字符集并完成转码详解
2013/08/02 PHP
PHP+jQuery 注册模块开发详解
2014/10/14 PHP
轻松掌握php设计模式之访问者模式
2016/09/23 PHP
php微信分享到朋友圈、QQ、朋友、微博
2019/02/18 PHP
新页面打开实际尺寸的图片
2006/08/25 Javascript
FF IE兼容性的修改小结
2009/09/02 Javascript
Jquery Ajax学习实例5 向WebService发出请求,返回泛型集合数据的异步调用
2010/03/17 Javascript
善用事件代理,警惕闭包的性能陷阱。
2011/01/20 Javascript
JS基础之undefined与null的区别分析
2011/08/08 Javascript
输入密码检测大写是否锁定js实现代码
2012/12/03 Javascript
Javascript实现图片轮播效果(一)让图片跳动起来
2016/02/17 Javascript
js实现select选择框效果及美化
2016/08/19 Javascript
vue.js利用Object.defineProperty实现双向绑定
2017/03/09 Javascript
discuz表情的JS提取方法分析
2017/03/22 Javascript
Vue父子模版传值及组件传值的三种方法
2017/11/27 Javascript
微信小程序之swiper轮播图中的图片自适应高度的方法
2018/04/23 Javascript
Spring boot 和Vue开发中CORS跨域问题解决
2018/09/05 Javascript
[02:44]DOTA2英雄基础教程 钢背兽
2013/12/19 DOTA
Python2.x版本中cmp()方法的使用教程
2015/05/14 Python
Python中使用支持向量机(SVM)算法
2017/12/26 Python
让Django支持Sql Server作后端数据库的方法
2018/05/29 Python
使用Python横向合并excel文件的实例
2018/12/11 Python
对Pycharm创建py文件时自定义头部模板的方法详解
2019/02/12 Python
Python中函数参数匹配模型详解
2019/06/09 Python
浅谈python多进程共享变量Value的使用tips
2019/07/16 Python
CSS3 圆角效果
2009/07/15 HTML / CSS
资深财务管理人员自我评价
2013/09/22 职场文书
期末考试动员演讲稿
2014/01/10 职场文书
初三学生个人自我评定
2014/04/06 职场文书
名人演讲稿范文
2014/09/16 职场文书
个人欠款协议书范本2014
2014/11/02 职场文书
生产车间主任岗位职责
2015/04/08 职场文书
实验室安全管理制度
2015/08/05 职场文书
2016年感恩母亲节活动总结
2016/04/01 职场文书
人生一定要学会的三样东西:放下、忘记、珍惜
2019/08/21 职场文书