今天本来说洗衣服的,衣服扔洗衣机就不管了,心血来潮研究下WordCloud,
第一步先装库 pip install wordcloud 等待安装结束即可
我用的是 word_cloud 官方的例子 simple.py文件,但是官方没有提供词库,所以就自己建了一个文件夹专门放背景图和相关的文件资源:
代码拷贝过来之后还是不能运行,第一个报的是就是文件路径不存在,因为我添加文件夹了,源码中没有的,我当初写的是:
text = open(path.join(ed,'/resource/constitution.txt')).read()
后来查了下有网友说是因为这是join的一个bug,前边有‘/’,的前边的参数不识别,我就拆了下写成下面的样子:
text = open(path.join(ed,'resource','constitution.txt')).read()
能读到文件了,但是报错 :
python UnicodeDecodeError: 'gbk' codec can't decode byte 0x84 in position 82: illegal multibyte sequ
添加 'r',encoding='UTF-8' 到open方法
text = open(path.join(ed,'resource','constitution.txt'),'r',encoding='UTF-8').read()
此时已经顺利打开,并且成功运行,结果如下:
哇....框框是什么鬼???
难道又是乱码问题?我检查了下ide设置 和文件设置,已经代码设置编码都是UTF8啊,什么情况?查了一下有网友说word_cloud默认不支持中文,需要引入相关字体。
# Generate a word cloud image wordcloud = WordCloud(font_path='simfang.ttf').generate(text)
自此基本完成,但是我这边还一次生成了两个图,我靠一个还有乱码,还得看下啥情况。周末的时光有点进步才觉得不那么惶恐,心安处自然是吾家。