python color属性_使用Python制作一个带GUI界面的词云自动生成工具(连载七)

前几篇向大家介绍了词云自动生成工具(GUI)的详解GUI词云自动生成工具中词云属性设置界面的实现(连载六)。通过前面内容我们基本构建出了词云自动生成工具的主要框架。本篇结合tkinter中的filedialog和colorchooser的使用,将词云属性界面的事件处理进行完善。

4b90f603738da9775c4e7e72e97f841c8618e33e.jpeg?token=3513df651e0cf1ea3e9cd545e5622446&s=04BE78325999FFEB091252E403007026有趣的

不赘述,直接开始吧。

【分析】

我们知道,在设置词云保存位置、词云轮廓图片、词云字体文件、词云背景色四个选项时,需要使用到tkinter.filedialog和tkinter.colorchooser,tkinter.filedialog.ask*用于弹出文件处理对话框,而colorchooser.askcolor用于弹出颜色选择对话框。

3ac79f3df8dcd1000d46fa502ba53b15b8122f98.jpeg?token=d15379b3e4a696c90808398ecc13e8b6&s=A65A7E9641A1D4E35A799CFE03009033颜色选择对话框很方便哦

在选择词云保存位置时,我们使用tkinter.filedialog.asksaveasfilename()通过弹出一个文件保存对话框来选择具体的词云保存位置,而在选择词云轮廓图片和词云字体文件时,我们需要使用tkinter.filedialog.askopenfilename()来弹出一个文件打开对话框来选择具体的属性。本篇只对askopenfilename()、asksaveasfilename()、askcolor()三个创建弹出对话框的函数使用进行梳理,其他弹出对话框的使用请搜索网络获取。

【目标】

通过上面的分析,本篇先对弹出对话框的使用进行梳理,在此基础上,对词云属性设置界面的事件处理进行完善,具体实现见下图。

4bed2e738bd4b31cddf643c7ddf85b7a9f2ff8bc.jpeg?token=5b6c105f0a9dc023bde165e64b835c8e&s=6FC2E91A19DF65C80E494CEB0200A036词云属性设置界面部分事件处理分析

【知识点】

我们主要来梳理一下askopenfilename()、asksaveasfilename()、askcolor()这三个常见函数创建对话框界面的方法。其实,对于tkinter中对话框的创建都是大同小异的,通过这三个函数大家基本能够掌握一般方法。

b151f8198618367a4837ec43775df7d1b21ce5a2.jpeg?token=ce3294a00dc6f1994829fb2eae843d2a&s=2FC4E91755C058F040F0F8F701008033这些内容我们前面的博文有涉及哦

关注Python高手养成的读者朋友们肯定知道,对于上面这些对话框我们老早之前就已经回顾过了,不知道怎么使用的请参见(Python使用tkinter界面编程中对话框样式汇总),这篇内容就是本篇的知识点,感兴趣的读者朋友们自行回顾。

3801213fb80e7becfa5dca177600c53d9a506b71.jpeg?token=8a7138c606ebcb73e3ae0879f8ac015c&s=0EE0C81657335F80127564D90300E0B3对话框是一种很常见的人机交互方式

现在,我们编写词云自动生成工具中词云属性设置的几个事件函数。编写之前,我们知道如果要设置词云的属性,最好以键值对的方式呈现出来,我们之前也定义了一个关于词云属性的字典(info_dict),在使用控件呈现设置属性的同时,我们将词云的各个属性加入到字典中,方便我们以后生成词云实例。

【编码】

主要是实现词云属性设置界面的几个事件实现函数,具体代码如下图所示。

42a98226cffc1e172c003cd010be8a06728de94c.jpeg?token=2042a08c505b2d3564d255deb841b155&s=E0C293444AA0B168165C5C0F020050C0属性设置界面事件实现代码

在每一个事件函数中,我们先弹出对话框获得相应的属性值,然后将属性值在相应的控件内进行展示,我们将各个属性定义为类的实例变量,这样,就不需要每次将属性加入到info_dict字典中了。对于设置的其它属性,我们直接在这一步页面跳转中使用Pmw.EntryField控件的get()方法获取其文本内容即可。我们来看一下选择词云文件保存位置这一功能的效果(其它不再截图),效果如下图所示。

6a63f6246b600c331e3e303443622d0ad8f9a1bf.jpeg?token=e677038d6ba5cc4c3bb0284ded894047&s=C892ED121D9E75C81E7800E90300B032选择保存位置效果图

其它的读者可以自己试试看,不再做具体展示。

【总结】

好了,我们已经实现了词云属性设置的功能,通过本篇内容的学习,我们可以试着回顾一下tkinter中对话框的使用。但是,我们如何将这些属性汇总后生成一个词云图呢?我们下篇内容将进行详细讲解,当然,我们需要用到之前做过的一个词云类(使用Python分析现行《婚姻法》内容并生成词云),后续我们会用到其中的MyWordCloud类(怎么样?类的好处在这里呈现了)。感兴趣的朋友们欢迎关注并留言讨论。

转载请注明出处,百家号:Python高手养成

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

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

相关文章

python爬取微博评论_用 python 爬取微博评论并手动分词制作词云

最近上海好像有举行个什么维吾尔族的秘密时装秀,很好看的样子,不过我还没时间看。但是微博上已经吵翻了天,原因是好吧,这不是我们关心的,我的心里只有学习我爱学习 Python 爬虫 本次爬取的是这条微博这条微博 微博的移…

公众号出现该公众号提供的服务出现故障分析

近日公众号出现了 出现该公众号提供的服务出现故障的错误提示 百度了一下这种错误的可能性 在这里插入图片描述 1. 程序后台未回复微信success 2. 5秒内无响应 3. 授权给了多个第三方平台,其中一个不可用。 4. ToUserName和 FromUserName 参数不正确无法找到接收…

数据结构之栈对逆BoLand表达式的计算

一. 后缀表达式: 后缀表达式,逆波兰表达式,是指运算符位于操作符之后,计算机对该式是从做到右进行计算,计算过程如下例子 二.计算思路 对于后缀表达式的计算,需要一个栈即可, 即遇见数字压栈,遇见运算符从栈中取出两个数,根据运算进行操作, 需要注意的是,减法以及除法都是后出栈…

c++ fork 进程时 共享内存_c/c++ Linux 进程间通信------共享内存

1. 什么是共享内存共享内存(Shared Memory),指两个或多个进程共享一个给定的存储区。进程可以将同一段共享内存连接到它们自己的地址空间中,所有进程都可以访问共享内存中的地址,就好像它们是由用C语言函数malloc分配的内存一样。而如果某个进…

python爬取新闻网站内容_python爬虫案例:抓取网易新闻

此文属于入门级级别的爬虫,老司机们就不用看了。 本次主要是爬取网易新闻,包括新闻标题、作者、来源、发布时间、新闻正文。 首先我们打开163的网站,我们随意选择一个分类,这里我选的分类是国内新闻。然后鼠标右键点击查看源代码&…

如何查看QQ和微信查看授权过那些应用?

平时生活中,要登录一些网站或者app时,为了省事儿,都用第三方登录,登录是简单快捷了一些 时间长了,授权过的那些应用都不知道了,甚至一些应用你没用去授权权限也一直开放给别人网站的 所以为了自己帐号的安全还是有必…

C# ASP.NET MVC 图片上传的多种方式(存储至服务器文件夹,阿里云oss)

图片上传时我们进场用到的一个功能今天将他整理了一下写了个demo希望对大家有用 该demo分为如下 1.上传至至服务器文件夹 2.上传至阿里云oss 3.百度webupload上传图片 效果图如下: 首先讲解一下后台代码 (1)上传至服务器存储 using System; using System.Collections; u…

java变量命名规则_浅谈JAVA开发规范与开发细节(上)

开发团队在开发过程中,由于每个人的开发习惯,以及对于技术的理解深浅程度不一,往往一个项目在开发过程中,代码的质量,代码的风格都不尽相似,所以有一份适合团队的代码规范是非常有必要的,而一个…

Charles

安装 https://www.jianshu.com/p/cb744a4c0344 https://blog.csdn.net/qq_28831197/article/details/81196571 使用说明: 来源:https://www.jianshu.com/p/73b134559c76 过滤网络请求 通常情况下,我们需要对网络请求进行过滤,只监…

.NET Core Docker使用初入篇

本篇内容如何在CentOS上安装Docker服务器与工具准备安装Docker更新系统安装Docker源设置Docker开机启动启动Docker使用Docker运行一个.NET Core 例子.net core 例子拉取.net core 例子停止.net core 例子启用其他如何在CentOS上安装Docker 服务器与工具准备 首先我们需要一个…

如何延长作用域链_第4部分2:作用域(链)和 闭包

知识列表作用域/作用域链 闭包(涉及JS垃圾回收机制 )https://zhuanlan.zhihu.com/p/27110726 【 js 基础 】【读书笔记】作用域和闭包https://juejin.im/post/5afb0ae56fb9a07aa2138425 深入理解闭包之前置知识→作用域与词法作用域(一&#…

C# T4模板在项目中的使用

1.什么是t4模版 T4,即4个T开头的英文字母组合:Text Template Transformation Toolkit。 T4(Text Template Transformation Toolkit)是微软官方在VisualStudio 2008中开始使用的代码生成引擎。在 Visual Studio 中,“T4 文本模板”是由一些文…

Docker中安装Jenkins实时发布.net core 项目(一)

Docker中安装Jenkins实时发布.net core 项目安装docker懒人篇手动安装dockerfile安装jenkins常规安装jenkinsjenkins的安装搜索jenkins拉取jenkins容器jenkins的启动jenkins密码其他安装docker 使用curl安装最新版 curl -fsSL https://get.docker.com/ | sh重启Docker systemc…

Docker中安装Jenkins实时发布.net core 项目(二)

Docker中安装Jenkins实时发布.net core 项目防坑点升级dockerjenkins运行运行命令jenkins拉取git并构建项目其他查看发布文件防坑点 升级docker 首先我们要确认我们在liunx安装的不是1.31.1的docker容器不然在后面的运行中会报错 can not open /etc/sysconfig/docker如果你是…

Jenkins构建 netcore5.0 项目时出现NU3028/NU3037错误的解决方案

我在使用Jenkins自动化部署项目的时候,出现了如下的错误 error NU3028: Package System.IO.Compression 4.3.0 from source https://api.nuget.org/v3/index.json: The repository primary signatures timestamp found a chain building issue: UntrustedRoot: self…

2019长安大学ACM校赛网络同步赛 L XOR

题意 求区间内有多少数x满足x^4x^5x0 1≤l≤r≤1018. 题解 根据异或的性质可以推到 x^4x5x -->x^4xx4x 即x和4x每一位都不同&#xff0c;即x和(x<<2)每一位都不同&#xff0c;就是x中每一位都与他前前一位不同。 那么就很简单了&#xff0c;可以很容易写出数位DP状态f…

贝塞尔曲线 总结

Bzier curve(贝塞尔曲线)是应用于二维图形应用程序的数学曲线。 曲线定义&#xff1a;起始点、终止点&#xff08;也称锚点&#xff09;、控制点。通过调整控制点&#xff0c;贝塞尔曲线的形状会发生变化。 1962年&#xff0c;法国数学家Pierre Bzier第一个研究了这种矢量绘制曲…

python变量标识符_简谈-Python的注释、变量类型、标识符及关键字

在Python程序中&#xff0c;要想支持中文输出&#xff0c;则要在代码前面添加标识符&#xff1a;开发人员在程序中自定义的一些符号和名称 标示符是自己定义的,如变量名 、函数名等 标识符的规则&#xff1a; 标示符由字目、下划线和数字组成&#xff0c;且数字不能开头 python…

win10使用docker desktop安装k8s一直starting解决方法

在docker中启动k8s一直卡在staring当中查了许多文档都写得不明不白的&#xff0c;研究了许久终于解决决定写个帖子来记录一下 1.首先查看本地docker中k8s的版本拉取源码 我们这里是1.19.7 然后我们进入到 k8s下载 去拉取k8s源码 git clone https://codechina.csdn.net/mirr…

Android菜单详解(三)——SubMenu和IconMenu

我们在上一篇介绍了如何在Android中创建和响应选项菜单&#xff0c;今天我们将探索子菜单和图标菜单。 子菜单Sub Menu 子菜单提供了一种自然的组织菜单项的方式&#xff0c;它被大量地运用在windows和其他OS的GUI设计中。Android同样支持子菜单&#xff0c;你可以通过addSubMe…