怎么用Python画出好看的词云图

首先附上原微信推文https://mp.weixin.qq.com/s/WGmjY6q26tBGtRdrlfy2sQ
下面记录一下python作图做了一个学期依然是个菜鸡的一些操作:
**

1.导入库

**
import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt
from PIL import Image
源代码缺少一句:
import numpy as np,代码运行会报错np is not define
导入库使用 npm install jieba
**

2.导入库镜像加速(常见问题)

**
参考博文 https://blog.csdn.net/sunny_happy08/article/details/83113692

**
以及恼火的各种包库安装不成功问题 https://blog.csdn.net/lsf_007/article/details/87931823

3.读取文件不成功

**
这里就要好好检查到底是文件结构有问题还是python默认读取文件的内容
本人使用spyder在这里插入图片描述位置比较好找一些
**

4.文件读取编码问题

**
原代码:encoding=‘utf8’ txt文件中含有此编码标准无法读取的字符
解决:
encoding=‘unicode_escape’
**

5.ValueError: We need at least 1 word to plot a word cloud, got 0. 说明文件读取依然有问题,依然是编码问题

**
打开.txt文件—文件—另存为—选择编码(UTF-8)—替换原来的》txt文件就OK了。参考博文https://blog.csdn.net/xiaoyong5854/article/details/84572309
讲真的spyder真是使用过除了pycharm以外最好用的python作图工具,毕竟下载库什么的比较好搞?
先记录到这里,目前可以出一个初步的图,但是还有问题没有解决

完结:
最后的问题依然是文件编码读取,使用原代码的encoding=‘utf8’ ,**注意要保持txt文件读取方式与本代码读取方式的一致即可正确读取内容,详情参考博客https://blog.csdn.net/xiaoyong5854/article/details/84572309
源代码和效果图奉上:

`import jieba
from wordcloud import WordCloud
import matplotlib.pyplot as plt
from PIL import Image
import numpy as np

text = open("./shuju1.txt",encoding=‘utf8’).read()
text = text.replace(’\n’,"").replace("\u3000","")
text_cut = jieba.lcut(text)
text_cut = ’ '.join(text_cut)

stop_words = open(“C:/Users/MACHENIKE/Desktop/郑州/好看哒词云图/shuju1.txt”,encoding=‘utf8’).read().split("\n")

background = Image.open("./ditu.jpg")
graph = np.array(background)

word_cloud = WordCloud(font_path=“simsun.ttc”,
background_color=“white”,
mask=graph, # 指定词云的形状
stopwords=stop_words)

word_cloud.generate(text_cut)
plt.subplots(figsize=(12,8))
plt.imshow(word_cloud)
plt.axis(“off”)`

效果图:在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值