import wordcloud
import jieba
import matplotlib
#s数字绘图库
'''w=wordcloud.WordCloud()
txt="My Heart is always with You I Love Chaina "
w.generate(txt)
w.to_file("E:/OpenCVTests/01.png")
'''
#import imageio
#from scipy import misc
from matplotlib.pyplot import imread
#需要安装scipy库,未成功
mask1=imread("E:/OpenCVTests/1.jpg")#尝试了几次,发现只能试.jpg格式的——————且白色部分为遮罩,其他色块颜色显露出来
#与下边代码中的mask=mask三句代码能够设置词云的输出形状
f=open("E:/OpenCVTests/Government.txt","r",encoding="utf-8")
t=f.read()
f.close
ls=jieba.lcut(t)#利用jieba库对汉字进行拆分,拆分成词语
txt=" ".join(ls)#将各个词语之间加如空格进行
w=wordcloud.WordCloud(width=1000,height=700,
max_words=150,
background_color="white",
mask=mask1,
font_path="C:/Windows/Fonts/simkai.ttf")#对于中文文件时,一定要指定字体,否则会乱码
w.generate(txt)
w.to_file("E:/OpenCVTests/08.png")
'''font_path表示用到字体的路径
width和height表示画布的宽和高
prefer_horizontal可以调整词云中字体水平和垂直的多少
mask即掩膜,产生词云背景的区域
scale:计算和绘图之间的缩放
min_font_size设置最小的字体大小
max_words设置字体的多少
stopwords设置禁用词
background_color设置词云的背景颜色
max_font_size设置字体的最大尺寸
mode设置字体的颜色 但设置为RGBA时背景透明
relative_scaling设置有关字体大小的相对字频率的重要性
regexp设置正则表达式
collocations 是否包含两个词的搭配
在generate函数中调试进去可以看到函数:
words=process_text(text)可以返回文本中的词频
generate_from_frequencies根据单词和词频创造一个词云
'''