当前位置: 首页 > 后端技术 > Python

如何生成炫酷的词云(已验证)

时间:2023-03-25 21:21:12 Python

wordcloud是什么?wordcloud是python的一个第三方库,叫做wordcloud,也叫wordcloud,是根据文字中出现的词频对内容进行可视化概括,可以用来绘制用户画像。安装wordcloud这里使用conda新建环境演示condacreate--namewordcloudpython=3.9.12condaactivatewordcloud需要安装4个包condainstall-y-nwordcloudnumpycondainstall-y-nwordcloudpillowcondainstall-y-nwordcloudmatplotlibcondainstall-y-nwordcloudwordcloud使用wordcloudwordcloud库,把wordcloud当做WordCloud对象,所以使用wordcloud大致可以分为三步fromwordcloudimportWordCloudwc=WordCloud()#1.创建对象:wc.generate("Choosealifeofaction,notoneofosteo-ntation.")#2.加载文本wc.to_file("./word.png")#3.输出文件wordcloud基础实战指定中文字体,否则会乱码fromPILimportImagefromwordcloudimportWordCloud,STOPWORDSimportmatplotlib.pyplotaspltimportnumpyasnpwc=WordCloud(background_color="white",#设置背景色max_words=2000,#词云显示最大字数height=400,#图片eheightwidth=800,#图片宽度max_font_size=50,#最大字体stopwords=STOPWORDS,#设置停用词font_path='C:/Windows/Fonts/simhei.ttf',#兼容中文字体,否则中文会显示乱码characters)#生成单词云wc.generate('诗指古诗词。张三也是汉字文化圈的特色之一。李斯。诗是阐述灵魂的文学艺术,诗人、赵文、依严格的节奏要求,用简洁的语言,密密麻麻的规矩,王五。')#这里的文字是19篇有好词的大文#生成的词云图保存到本地wc.to_file("./result2.png")#显示图像plt.imshow(wc,interpolation='bilinear')#interpolation='bilinear'表示插值方式为双线性插值plt.axis("off")#关闭图像坐标plt.show()附上wordcloud的配置参数wordcloud进阶实践这一部分,本文将介绍如何在预设的背景图上绘制词云。例如:以我们最熟悉的中国地图为背景,在此基础上绘制词云,修改词云中的“mask”属性值即可,具体代码如下。fromPILimportImagefromwordcloudimportWordCloud,STOPWORDSimportmatplotlib.pyplotaspltimportnumpyasnpwc=WordCloud(background_color="white",#设置背景色max_words=2000,#词云最大显示字数max_font_size=60,#最大字体停用词=STOPWORDS,#设置停用词mask=np.array(Image.open("./china.jpg")),#选择背景图片为中国地图font_path='C:/Windows/fonts/simhei.ttf',#兼容中文字体,否则中文会显示乱码)#生成词云wc.generate('游云素.傅敏波.李令秀.但子云.司马淼.李子越.毛半磊.太叔瑞帆。赞花婉。老子铭。吴志荣。索听风。罗沐宁。邢天心。詹香露。乌江雪。景云。琼梦。天梦山。翻骨蛋。说说倾月。去他妈的乐志。贾晓蕾。全职。银长。初春雪。隋若云。陀嘉仪。溪嘴桥。禄丘灵衣。借香天。顾飞章。射尾。盛映秀。成思。知识。高阳基。杨丹。葛路蝶。雪季月。冷明轩。廉济兴。童逸轩。勇敢起来。苏萍玲')#这里的文字是女排好词评论文字#生成的词云图保存到本地wc.to_file("./result3.png")#显示图片plt.imshow(wc,interpolation='bilinear')#interpolation='bilinear'表示插值方式为双线性插值plt.axis("off")#关闭图像坐标plt.show()准备好的图如下