文章目录
- 准备
- 代码
- 效果
准备
运行本程序需要安装第三方模块matplotlib、jieba、wordcloud 和scipy ,scipy要求1.0.0版本,否则程序将出现导入错误:ImportError: cannot import name ‘imread’ from ‘scipy.misc’
ImportError: cannot import name ‘imread’ from ‘scipy.misc’ (D:\python3.11\Lib\site-packages\scipy\misc_init_.py)
代码
#导入matplotlib模块pyplot函数并使用as给函数起个别名plt
import matplotlib.pyplot as plt
import jieba #导入jieba分词模块
import wordcloud #导入词云图模块
from scipy.misc import imread #从scipy.misc模块导入imread函数
from matplotlib import colors #从matplotlib模块导入colors函数
# 读取文本文件
str1 = open('mr.txt','r').read() #ycy.txt可以改成自己的文件
cut_text = jieba.cut(str1) #分词处理
word = ' '.join(cut_text) #以空格分割文本
#红黑色值
color_list=['black','red']
#多种颜色
'''color_list=['LightCoral','RosyBrown','IndianRed','Red','Brown','FireBrick','DarkRed','Maroon','Gainsboro','LightGray','Silver','DarkGray','Gray','DimGray','Black']'''
colormap=colors.ListedColormap(color_list) #matplotlib色图
#外星人版
pic = imread('外星人1.png') #读取图片
wc = wordcloud.WordCloud(mask=pic, #背景图形,如果根据图片绘制,则需要设置font_path='simhei.ttf', #可以改成自己喜欢的字体background_color='white', #词云图背景颜色可以换成自己喜欢的颜色colormap=colormap)
wc.generate(word) #生成词云
#显示词云图
plt.imshow(wc)
plt.axis('off')
plt.show()