快乐学Python,使用Python为电视剧主演生成词云

上篇文章我们串联了爬虫技术的几个基础环节,将电视剧的信息保存到了 csv 文件。这里,我们做个小实验:将主演信息生成词云。(其他文章可看专栏文章)

1、需求描述

将全集网抽取的电视剧(名称、评分、主演)信息中的主演信息生成词云,使得数据展示更加直观。

2、需求分析

根据 csv 文件保存的数据来看,主演信息保存在 stars 字段中,我们需要读取 csv 文件的 stars 字段,以此数据为展示基础,生成词云。

3、技术分析

在 Python 中,生成词云需要用到 wordcloud、matplotlib 库。我们需要下载此库。同时,中文词云需要用到中文字体,也需要我们提前下载字体文件,在程序中使用。

4、实现词云

(1)下载依赖库(wordcloud、matplotlib)

这里安装的步骤和之前安装 selenium 的步骤一样。我们去开始菜单 → Anaconda ,选择 Anaconda Prompt,出现命令行界面。在命令行界面,输入如下安装命令:

conda install wordcloud
conda install matplotlib

分别执行以上命令后即可下载成功。

(2)下载字体库

上面讲过了,主演名称是中文,所以需要下载中文字体来确保显示不乱码,这里我们可以直接在网上下载字体文件,下载后后缀名是.ttf。(不知道怎么下载的可以在公众号留言,我可以发你)

(3)开始编码

具体的实现步骤大家可以参照代码来看,每行代码都有注释,复制出来也是可以直接运行的,但是前提是要下载好库和字体。具体代码如下:

# 导入wordcloud库
from wordcloud import WordCloud
# 导入matplotlib库中的pyplot,并取别名为plt
import matplotlib.pyplot as plt# 词云展示的文字
text = "胡军 林志颖 高虎 修庆 刘亦菲 陈好 刘涛 魏宗万 蒋欣 杨蕊 胡军 汤镇宗 舒畅 申军谊 胡军 计春华 石兰 马浴柯 李勇勇 王璐瑶 彭丹 高远 钟丽缇 阮丹宁 王祎 王海珍 周冰清 周玉洁 任泽巍 刘立伟 张衡平 李彧 高照 赵雍 修革 巴音 吕士刚 谢雨欣 张谦 任舞 鄂不斯 晋松 郑爽 孙蛟龙 许还山 张纪中 马仑 黄小蕾 刘仲元 周晓文 杨念生 许敬义 张楠 赵强 廖琪瑛"# 创建WordCloud对象
# 这里width为词云宽度,height为词云宽度,background_color为背景色:白色。
# font_path为字体的位置。如果放在源文件同级文件夹,即可直接写文件名称,如果单独放,就需要写全路径,比如:D:/code/quanzikuzhengsongti.ttf
# min_font_size为字体最小尺寸
wordcloud = WordCloud(width = 800, height = 800,background_color ='white',font_path="quanzikuzhengsongti.ttf",min_font_size = 10).generate(text)# 使用matplotlib显示词云图片
plt.figure(figsize = (8, 8), facecolor = None)
plt.imshow(wordcloud)
plt.axis("off")
plt.tight_layout(pad = 0)
plt.show()

(4)运行结果

以上代码运行后,展示效果如下:

以上就是使用 Python 生成词云的内容。代码比较简单,也还有很多的方法和属性没用到,大家可以自己试试一些属性,说不定会发现其他的一些好玩的东西。

更多内容欢迎关注微信公众号:服务端技术精选

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

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

相关文章

云服务器基于Centos创建个人云盘实践经验分享

文章目录 安装运行Cloudreve安装ossfscentos更换yum源 配置ossfs挂载oss存储配置开机启动 配置cloudreve推荐阅读 安装运行Cloudreve 执行如下命令,下载cloudreve安装包。 wget https://labfileapp.oss-cn-hangzhou.aliyuncs.com/cloudreve_3.3.1_linux_amd64.tar…

爬虫笔记(一):实战登录古诗文网站

需求:登录古诗文网站,账号+密码+图形验证码 第一:自己注册一个账号+密码哈 第二:图形验证码,需要一个打码平台(充钱,超能力power!)或…

纯命令行在Ubuntu中安装qemu的ubuntu虚拟机,成功备忘

信息总体还算完整,有个别软件更新了名字,所以在这备忘一下 1. 验证kvm是否支持 ________________________________________________________________ $ grep vmx /proc/cpuinfo __________________________________________________________________…

【android】 android 里写jni

目录 (1) 环境准备 (2) 关联c文件到gradle文件 (3) 生成了 (4) 书写 (5) 使用 (6)业务调用 参考文档 (1) 环境准备 ndk, cmake (2) 关联c文件到gr…

three.js从入门到精通系列教程002 - three.js正交相机OrthographicCamera

<!DOCTYPE html> <html><head><meta charset"UTF-8"><title>three.js从入门到精通系列教程002 - three.js正交相机OrthographicCamera</title><script src"ThreeJS/three.js"></script><script src&qu…

Android Matrix绘制PaintDrawable设置BitmapShader,手指触点为圆心scale放大原图,Kotlin(二)

Android Matrix绘制PaintDrawable设置BitmapShader&#xff0c;手指触点为圆心scale放大原图&#xff0c;Kotlin&#xff08;二&#xff09; 在 Android Matrix绘制PaintDrawable设置BitmapShader&#xff0c;手指触点为圆心scale放大原图&#xff0c;Kotlin-CSDN博客 基础上&…

Vscode 上安装 Compilot

GitHub Copilot 是由 OpenAI 和 GitHub 开发的 AI 工具。其目的是通过自动完成代码来帮助开发人员使用集成开发环境 &#xff08;IDE&#xff09;&#xff0c;如 Visual Studio Code。它目前仅作为技术预览版提供&#xff0c;因此只有已在候补名单上被接受的用户才能访问它。对…

C# wpf 实现任意控件(包括窗口)更多调整大小功能

WPF拖动改变大小系列 第一节 Grid内控件拖动调整大小 第二节 Canvas内控件拖动调整大小 第三节 窗口拖动调整大小 第四节 附加属性实现拖动调整大小 第五章 拓展更多调整大小功能&#xff08;本章&#xff09; 文章目录 WPF拖动改变大小系列前言一、添加的功能1、任意控件Drag…

分布式ID(2):雪花算法生成ID

1 雪花算法简介 这种方案大致来说是一种以划分命名空间(UUID也算,由于比较常见,所以单独分析)来生成ID的一种算法,这种方案把64-bit分别划分成多段,分开来标示机器、时间等,比如在snowflake中的64-bit分别表示如下图(图片来自网络)所示: 41-bit的时间可以表示(1L&l…

汽车微电机行业研究:预计2029年将达到188亿美元

微电机行业是技术密集型行业&#xff0c;其起源于欧洲的德国、瑞士等国家&#xff0c;发展于日本。随着改革开放&#xff0c;中国作为发展中国家&#xff0c;承接了德国、日本等发达国家的汽车微电机产业转移&#xff0c;技术扩散逐步向我国转移。 微特电机广泛应用于信息处理设…

高清网络视频监控系统技术方案

目 录 一、概述 二、建设目标及需求 &#xff08;一&#xff09;建设总目标 &#xff08;二&#xff09;需求分析 三、设计依据与设计原则 &#xff08;一&#xff09;设计依据 &#xff08;二&#xff09;设计原则 四、建设方案设计 &#xff08;一&…

Vue3新特性defineModel()便捷的双向绑定数据

官网介绍 传送门 配置 要求&#xff1a; 版本&#xff1a; vue > 3.4(必须&#xff01;&#xff01;&#xff01;)配置&#xff1a;vite.config.js 使用场景和案例 使用场景&#xff1a;父子组件的数据双向绑定&#xff0c;不用emit和props的繁重代码 具体案例 代码实…

Unity导出Android项目踩坑记录

导出的时候需要注意以下地方的配置&#xff1a; 1、buildSetting-> 设置ExportProject 2、buildsetting ->playerSetting ->设置IL2CPP 3、设置ndk edit->preferences->external tools->ndk 如果unity的ndk版本和android项目里的ndk版本不一致会报错&…

css3+javaScript实现一个左右钟摆-摇晃的红灯笼网页特效

css3javaScript实现一个左右钟摆-摇晃的红灯笼网页特效&#xff01;前天逛博客时无意中看见了&#xff0c;别人的博客顶部有一个会左右钟摆的摇晃的红灯笼&#xff0c;产生了想法&#xff0c;我也想给自己做一个&#xff0c;但是网上找了很多方案&#xff0c;都没有实现。终于在…

tidb Cloud 连接spring boot 项目

一、 免费试用tidbitcloud TiDB Cloud Documentation | PingCAP Docs 1.github账号登录 2.创建集群 3.点击对应集群cludter0 导入数据 导入 本地导入只支持csv文件&#xff0c;其他导入需要AWZ账号使用S3云存储 二、连接spingboot项目 选择java&#xff0c;复制下面的jd…

spring boot学习第八篇:通过spring boot、jedis实现秒单

参考&#xff1a;Redis实现分布式锁的7种方案 - 知乎 1、 准备数据库表&#xff0c;如下SQL表示库存表&#xff0c;有主键ID和库存数量字段 CREATE TABLE t_stock (id bigint(20) NOT NULL AUTO_INCREMENT,quantity bigint(20) NOT NULL,PRIMARY KEY (id) ) ENGINEInnoDB DEF…

Transformer详解(附代码实现及翻译任务实现)

一&#xff1a;了解背景和动机 阅读Transformer论文&#xff1a; 阅读原始的Transformer论文&#xff1a;“Attention is All You Need”&#xff0c;由Vaswani等人于2017年提出&#xff0c;是Transformer模型的开创性工作。 二&#xff1a;理解基本构建块 注意力机制&#…

源码:Spring常规Bean创建过程

Bean创建过程&#xff1a; 一、版本 5.3.10二、学习内容 Bean创建过程源码三、Bean生命周期 时间轴地址&#xff1a;点击 四、bean创建过程脑图总结 脑图地址&#xff1a;点击 五、源码过程 说明&#xff1a; bean创建入口一般都是通过getBean(xxx);方法进入的&#xf…

C 语言->编译和链接实现原理

✅作者简介&#xff1a;大家好&#xff0c;我是橘橙黄又青&#xff0c;一个想要与大家共同进步的男人&#x1f609;&#x1f609; &#x1f34e;个人主页&#xff1a;橘橙黄又青-CSDN博客 今天学习&#xff1a;浅学编译和链接内部实现原理 前提&#xff1a;本文是在gcc编译环…

「Kafka」Broker篇

「Kafka」Broker篇 主要讲解的是在 Kafka 中是怎么存储数据的&#xff0c;以及 Kafka 和 Zookeeper 之间如何进行数据沟通的。 Kafka Broker 总体工作流程 Zookeeper 存储的 Kafka 信息 启动 Zookeeper 客户端&#xff1a; [atguiguhadoop102 zookeeper-3.5.7]$ bin/zkCli.sh通…