最近接到的一个新项目,直接利用python+tkinter实现了GUI界面的成功呈现,大致记载如下:
客户项目需求:
1、能够自动识别word文档/excel表/txt文本格式的内容,并且进行词组自动分词和词频分析统计,支持下载到电脑桌面。
2、根据客户的word文档/excel表/txt文本格式的内容一键制作词云图,并且词云图支持自定义字体、字体颜色、颜色方向、词云图背景色、词云图尺寸大小功能。
3、附带停用词功能:即根据客户不想使用的词组可实现直接删除,再重新生成剔除词组后的新的词云图。
4、内置图片模板不少于1200张,字体素材不少于300款字体,字体渐变颜色不少于1000种,词云图背景色可无限制自定义,图片大小可无限制自定义。
项目最终成交价:7600元。
开发周期:10天
最终成品展示:
上述制作是完整的项目制作,但是目前这个MagicCloud词云图一键制作软件的简化版本已经被拿到Tao宝上架,88元/款 ,简化版当然就没有那么多的素材了,但是功能却一个都没有少,也是良心了。目前上架的简化版包含了上述完整版所有功能,但是素材总结如下:图片模板500款(足够了),字体渐变颜色70种(由于可以调节不渐变/水平/垂直渐变方向,实际上等于210种渐变颜色,也是足足够用了!),字体200款,但是别忘了,它有字体自定义的功能,可以自己添加或删除下载好的字体,等于字体素材量上不封顶了!
这个是本软件的上架Tao宝店铺地址:首页-词云社-淘宝网淘宝, 店铺, 旺铺, 词云社https://ciyunshe.taobao.com
后期完整版和升级版都会一一上架。完整版就是最上面开头的那个完整的项目,简化版的就是那个店铺里已经上架的。那升级版的MagicCloud词云图一键制作软件有不同吗?当然,升级了呗!在完整版的基础上功能增加了一键制作动态词云图、会跳舞的词云图、内置更加丰富和炫酷的图片模板(包括明星人物、绚丽风景、炫酷科技等等各种图片蒙版),支持客户自定义图片模板等功能,更强大了,完全实现了可百分百根据客户自己的想法制作词云图了!
其他的就不多说了,下面放一个能够简单实现词云图制作的代码,仅供参考(仅仅基于python实现,这里不做GUI的tkinter界面实现介绍):
我使用的是vscode软件写python代码,所以我们直接在电脑上快捷键win+R调出运行(那个win就是键盘上的windows图标键,一般在键盘左下角Ctrl键右边挨着那个就是),然后输入cmd回车就出现了下面这个界面:
接着我们可以直接安装本次制作词云图代码需要的库stylecloud用来制作词云图、jieba用来自动分词,在上面的cmd界面中直接输入:
pip install stylecloud
pip install jieba
安装好这两个需要用到的库之后,我们就可以直接编辑代码了,关于注意事项我已经写在了代码中的注释中,如下:
from stylecloud import gen_stylecloud
from jieba import cut
filepath='C:/Users/asus/Desktop/aa.txt' # 这里改写成你想制作词云图的txt文本完整路径地址
# 读取txt文本内容
with open(filepath,'r',encoding='utf-8') as f:
txtword=f.read()
# 直接用jieba自动分词
word_list = cut(txtword)
result = " ".join(word_list)
# 制作停用词列表,如果有想删除的词组直接写入列表中即可
listword=[]
# 制作词云图
gen_stylecloud(
text=result,
size=600 , # (这里你可以更改自己需要的词云图尺寸大小)
font_path='C:/Windows/Fonts/Arial.TTF', # (这里你可以更改自己需要的词云图字体)
background_color='#000000',# (这里你可以更改自己需要的词云图背景颜色)
palette='tableau.BlueRed_12', # (这里你可以更改自己需要的词云图字体渐变颜色)
gradient='horizontal', # 水平方向horizontal,垂直方向vertical
icon_name='fas fa-undo',# (这里你可以更改自己需要的词云图图标模板)
stopwords=True, # (开启自带的停用词功能)
custom_stopwords=listword, # (输入自己想要删除的词组)
collocations=False, # (是否包括两个单词的搭配)
output_name='C:/Users/asus/Desktop/test_ciyun.png') # (这里你可以更改自己
# 制作好的词云图输出存放地址)
以上代码亲测运行成功,生成词云图如下:
但是,先不要急着复制代码,因为关于上述制作词云图的代码中有三处需要注意的地方,特别提醒一下:
注意1:需要保证txt文本是UTF-8格式,因为我们代码中注释 # 读取txt文本内容用的是encoding='utf-8',如果你的原txt文本不是UTF-8格式,可以选择另存为——右下角格式选择——UTF-8——保存即可!否则会报错!
注意2:代码中的palette='tableau.BlueRed_12', # (这里你可以更改自己需要的词云图字体渐变颜色),这行代码中用到了palette控制词云图字体颜色,那么它的值'tableau.BlueRed_12'在哪里找的呢?如果我想换成其他的颜色可以吗?当然,完全没问题!下面就是介绍:
Palettable (jiffyclub.github.io)https://jiffyclub.github.io/palettable/
上面这个Palettable网站直接打开,我们想要更换的渐变颜色值全在里面,随便点选打开一个看看。
点!
再点!
接着点!
怎么样?好多专业调色方案啊!
至于那个颜色值该怎么写法,可以参考上述代码格式,也可以查询网站中的用法介绍就行了!然后我们就可以更换网站中任意的字体渐变颜色了!超级多的!
注意3:代码中的icon_name='fas fa-undo',# (这里你可以更改自己需要的词云图图标模板),这个图标模板也就是词云图生成的图案形状模板,比如上述代码中icon_name的值'fas fa-undo'就生成了一张旋转箭头的词云图。那么我想更换其他的图标模板可以吗?当然还是可以的,下面就是介绍:
Font Awesome 5,一套依旧绝佳的图标字体库和CSS框架 (dashgame.com)https://fa5.dashgame.com/#/
我们接着打开上面这个Font Awesome网站,点击查看图标。
怎么样?所有的图标都在这里的,足足1608款,涉及范围足够你使用的了。
然后我们直接点击对应图标右上角的灰色小块儿复制就行了,最后直接粘贴进代码中的icon_name='(你复制的图标名称)'这里即可。但是注意这其中有些不是免费使用的图标,我们直接使用免费的就好,免费的大概也有1400多种了,够够的了。
至此,简单的词云图制作相关介绍已经介绍完毕。堆码不易,如果您喜欢或者有用的话给个赞就好!相互学习,相互进步!
MagicCloud词云图一键制作简化版软件上架Tao宝店铺地址:首页-词云社-淘宝网淘宝, 店铺, 旺铺, 词云社https://ciyunshe.taobao.com
后期完整版和升级版都会一一上架。
MagicCloud词云图一键制作简化版¥88/款
素材:内置500款图标蒙版,210种词云字体颜色,200款创意字体。
功能:自定义字体素材,自定义词云图背景色,自定义字体颜色渐变方向,自定义词云图尺寸,停用词功能,支持Word文档/Excel表/Txt文本格式识别上传制作,热点词组自动分词,词频分析统计下载,3-10秒极速制作词云图,一键下载保存词云图。