from wordcloud import WordCloud, STOPWORDS from PIL import Image import numpy as np import matplotlib.pyplot as plt import jieba # 打开文件 text = open("zhihu.txt", encoding="utf-8").read() # 中文分词 text = ' '.join(jieba.cut(text)) print(text[:100]) # 停用词 stopwords = STOPWORDS STOPWORDS.add("的") STOPWORDS.add("是") STOPWORDS.add("和") STOPWORDS.add("对") STOPWORDS.add("上") STOPWORDS.add("人") STOPWORDS.add("有") STOPWORDS.add("就") STOPWORDS.add("一") STOPWORDS.add("不") STOPWORDS.add("要") STOPWORDS.add("等等") STOPWORDS.add("在") STOPWORDS.add("比如") STOPWORDS.add("自己") STOPWORDS.add("我们") STOPWORDS.add("不能") # 生成对象 # 使用蒙版图片 mask = np.array(Image.open("bird.jpg")) # 使用蒙版图片 wc = WordCloud( mask=mask, font_path="STKAITI.TTF", mode="RGBA", background_color=None, stopwords=STOPWORDS ).generate(text) # 显示词云 plt.imshow(wc, interpolation="bilinear") plt.axis("off") plt.show() # 保存文件 # wc.to_file("zhihu_wordcloud.png")