Storm 发表于 2021-3-31 19:15:52

词云生成器——Mind+Python模式

词云是什么?它就是一个词云
词云是用词来填充一张图片来表达作者的想法
如上图,表达了作者,也就是我,对螺蛳粉的强烈喜爱
那词云怎么做呢?
百度了一下,有些网站做词云要收费、带水印、或操作比较麻烦,
于是我试着用Mind+的Python模式来做了一个词云生成器.
【第一步】:创建一个Python项目1.1打开Mind+(1.7.0RC2.0版本),选择Python模式。

1.2建立一个Python项目,并以“.py”结尾。

1.3和Python的世界打个招呼。
【第二步】:加载库文件
选择创作词云所需要的五个库文件,操作如下图所示:
每个库文件的简介在软件里都写的有,但具体理解它的功能和用法,还需要一些项目实操练习才可理解。





【第三步】:建立好“词”和“云”
3.1准备好词云所需要的“词”和“云”
“云”也就是图片,我们找到一张轮廓清晰的“.jpg”格式的图片。
然后在桌面建立一个“.txt”格式的文档,将各种词或者语句放入文本中。
词云中显示的“词”就是从该文本中提取的。
参考如下:

3.2将准备好的“词”和“云”放入Python项目的文件夹中.
操作如下图所示:


到这一步,其实,你就可以直接打开我的程序用起来了。

打开后,双击词云对应的“.py”文件,
就会看到如下程序

【参数调整说明】
1、程序中“图案形状”对应的就是原始的图片名称;
2、“文本”对应的就是前面建立的“txt”文件名称;
3、“成品图”对应的就是输出的图片的名称。

4、如果想要调整词云上显示的字体,
找到设置字体的程序(第五行):
font_path="C:\Windows\Fonts\HGXK_CNKI.TTF",max_words=200

“HGXK_CNKI.TTF”则是不同字体的名称,
所以只需要修改这个名称即可。
接下来可按照如下操作找到名称:
    4.1任意打开一个文件夹,按照下图所示输入:“Windows\Fonts”

    4.2找到自己想要的字体,鼠标右键点击查看属性

    4.3复制对应的名称,粘贴到程序中就好啦。

以上就是在不需要仔细研究程序的基础上,修改一下参数即可实现创作词云的效果。
对于爱学习的小朋友们来说,我们就来了解下各程序的含义:
import wordcloud #调用词云库
import jieba #调用结巴库(能够将句子分成一个一个的词)
import numpy as np#调用numpy库,并命名为np
from PIL import Image#从PIL库中调用Image功能

w=wordcloud.WordCloud(width=1000,height=700,background_color="white",font_path="C:\Windows\Fonts\HGXK_CNKI.TTF",max_words=200)
#设置词云的尺寸(背景颜色白色,字体设置'在字体目录文件中找到字体名称',最多显示200个词)

maskpic = np.array(Image.open("图案形状.jpg"))
#选择词云的图片,“np.array”将图片转换成数组,在程序中命名为“maskpic”
w.mask=maskpic
#设置词云的图片为“maskpic”。“w.”是“wordcloud.”的缩写,代表词云库的内置功能调用。
w.color_func=wordcloud.ImageColorGenerator(maskpic)
#重置词云图片“maskpic”的颜色

f=open("文本.txt",encoding="utf-8")
#将读取的词云文本,在程序中命名为“f”,“utf-8”是解码文档用。
txt=f.read()#“txt”储存读取的文本
a=jieba.lcut(txt)#用jieba的精准分词模式将文本分开成词语,并储存在“a”中
b=" ".join(a)#拼接分开好的文本“a”,储存在“b”中

w.generate(b)#将文本“b”进行拼接
w.to_file("成品图.png")#导出图片文件




END

Forgotten 发表于 2024-5-8 13:51:52

本帖最后由 Forgotten 于 2024-5-8 13:53 编辑

小青Andy 发表于 2024-1-8 13:24
字体报错,换过字体 更新过pip pillow包,都不行    raise ValueError("Only supported for TrueType fonts ...
提示“raise ValueError("Only supported for TrueType fonts") ValueError: Only supported for TrueType fonts”是因为wordcloud这个库新版本的问题,卸载掉已经安装的库,然后指定安装1.8.0版本就行。
pip install wordcloud==1.8.0





参考链接

szjuliet 发表于 2021-3-31 19:58:59

本帖最后由 szjuliet 于 2021-3-31 20:06 编辑

一份有味道的词云嘿嘿{:7_224:}{:7_224:}

春秋大仙 发表于 2021-3-31 20:20:44

Storm 发表于 2021-3-31 19:15
词云是什么?它就是一个词云
词云是用词来填充一张图片来表达作者的想法
如上图,表达了作者,也就是我,对 ...

螺狮粉产业文化推广大使

Storm 发表于 2021-4-1 10:11:18

不吃螺蛳粉,三分不够准!{:7_216:}

rzyzzxw 发表于 2021-4-1 11:02:46

看饿了

小卢 发表于 2021-4-1 14:46:28

厉害!!

小青Andy 发表于 2024-1-8 13:24:09

字体报错,换过字体 更新过pip pillow包,都不行    raise ValueError("Only supported for TrueType fonts")
ValueError: Only supported for TrueType fonts

x9hJ1IuzChxa 发表于 2024-3-8 20:52:18

小青Andy 发表于 2024-1-8 13:24
字体报错,换过字体 更新过pip pillow包,都不行    raise ValueError("Only supported for TrueType fonts ...

你好,你这个问题解决了吗?我也是同样的问题,尝试了很久也调整不了

DFBJeEqYNRj 发表于 2024-5-6 15:46:59

x9hJ1IuzChxa 发表于 2024-3-8 20:52
你好,你这个问题解决了吗?我也是同样的问题,尝试了很久也调整不了

同问,一直报错,无法解决

mp5oYCbqOiRq 发表于 3 天前

啊啊啊!抄了半小时才发现可以复制!
页: [1]
查看完整版本: 词云生成器——Mind+Python模式