Python词云
由简到难
ps扣下来的图片才能使用
1、
import os
from wordcloud import WordCloud #导入词云的电放库
w=WordCloud() #创建词云对象赋值给w,此时一个w就表示一个词云对象
#调用词云对象的generate方法,将文本传入
w.generate('and the government of the People,by the People,for the People,shall not perish from earth');
w.to_file("output.png")#将生成的词云保存为.png保存到output.png
2、
from wordcloud import WordCloud
#创建一个词云对象,
w=WordCloud(height=400, #设置输出图片的高度
width=400, #设置输出图片的宽度
background_color="white", #背景色为白色
font_path="msyh.ttc" ); #中文选中‘msyh。ttc’,即为微软雅黑
#输入文本
w.generate("今年7月27日,湖北省荆州高铁站发生输入型本土关联病例,引发武汉沌口项目工地疫情聚集性传播,并蔓延至省内部分地区。据湖北卫视9日报道,本轮疫情的传播,暴露出部分党员领导干部思想麻痹松懈、落实常态化防控措施不力、存在失职失责问题。日前,湖北省纪委监委会同相关主管部门对19名责任人进行了严肃追责问责。")
#输出output1.png
w.to_file("output1.png")
3、
from wordcloud import WordCloud
import jieba as j #词库,用来分词用的
f=open('F:\h.txt',encoding="utf-8") #选择打开文件的路径,以及编码格斯
f1=f.read();
w=WordCloud(height=800,
width=800,
font_path="msyh.ttc",
background_color="white");
w.generate(f1)
w.to_file("output3.png")
4、
import jieba as j
a="动力学和电磁学"
a1=j.lcut(a) #分片后是列表,但是WordCloud只能存储字符串
print(a1)
print(type(a1))
a2="".join(a1) #因为worldcloud只能存储字符串,需要通过“”.join()方法,连接为字符串
print(a2)
print(type(a2))
5、
import jieba as j
from wordcloud import WordCloud
f=open("./txt/1.txt",encoding="utf-8");
f1=f.read();
f2=j.lcut(f1) #使用jieba库,进行分词
f3=" ".join(f2) #用空格将词语分开
w=WordCloud(height=400,
width=400,
background_color="green",
font_path="msyh.ttc");
w.generate(f3);
w.to_file("output5.png")
6、
import jieba as j
from wordcloud import WordCloud
#第一步,对文件进行字符串处理
f=open("./txt/2.txt",encoding="utf-8")
f0=f.read()
f1=j.lcut(f0);
f2=" ".join(f1)
#第二部,词云生成
w=WordCloud(height=400,
width=400,
background_color="white",
font_path="msyh.ttc",
prefer_horizontal=(0.7),#表示水平放置词语的比例为0.7,可以自己更改
stopwords="的");
w.generate(f2)
w.to_file("output6.png")
7、
import jieba as j
import imageio
from wordcloud import WordCloud
#第一步,字符串处理
mk=imageio.imread("a1.png") #以导入的图片为词云模板
f=open("./txt/2.txt",encoding="utf-8");
f2=f.read();
f3=j.lcut(f2);
f4=" ".join(f3)
w=WordCloud(width=1000,
height=700,
background_color="white",
font_path="msyh.ttc",
mask=mk, #mk赋给mask
scale=15,
contour_color="steelblue", #设置轮廓的颜色
contour_width=1, #设置轮廓边框的粗细
)
w.generate(f4);
w.to_file("output221.png")
视频地址:https://www.bilibili.com/video/BV1i4411W76Z?p=11