需要使用python的第三方类库jieba、matplotlib、wordcloud,如果没有请用pip安装。
- 代码实现
import jieba
import matplotlib.pyplot as plt #相当于c的宏定义
from wordcloud import WordCloud,STOPWORDS
text=""
f=open(r"File\word_cloud.txt","r")
li=f.readlines() #以"\n"为分隔符返回一个列表
for line in li:
line=line.strip("\n") #去除"\n"
#jieba.cut()分词后返回一个列表
text+=" ".join(jieba.cut(line)) #. join(): 连接字符串数组。将字符串、元组、列表中的
# 字符串元素以指定的字符(分隔符)连接生成一个新的字符串
f.close()
#设置词云样式
wc=WordCloud(
background_color="white", #设置背景颜色
max_words=100, #设置最大实现的字数
max_font_size=300, #设置字体最大值
random_state=15, #设置配色数
stopwords=STOPWORDS, #设置停用词(去掉一些频率极高且不是重点的词,如的、了、是等)
font_path=r"C:Windows\Fonts\SimHei.ttf" #设置中文字体
)
wc.generate_from_text(text) #生成词云
plt.imshow(wc) #绘出词云图
plt.axis("off") #是否显示x,y轴下标
plt.show() #显示词云图
- 效果图
ps:另外可以自己设置图的背景等各种个性化自定义。