python根据文本生成词云图代码实例
这篇文章主要介绍了python根据文本生成词云图代码实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
效果
代码
fromwordcloudimportWordCloud importcodecs importjieba #importjieba.analyseasanalyse fromscipy.miscimportimread importos fromosimportpath importmatplotlib.pyplotasplt fromPILimportImage,ImageDraw,ImageFont #绘制词云 defdraw_wordcloud(): #读入一个txt文件 comment_text=open('data.txt','r',encoding='utf-8').read() #结巴分词,生成字符串,如果不通过分词,无法直接生成正确的中文词云 cut_text="".join(jieba.cut(comment_text)) d=path.dirname(__file__)#当前文件文件夹所在目录 color_mask=imread("bilibili.jpg")#读取背景图片 cloud=WordCloud( #设置字体,不指定就会出现乱码 font_path="C:/Windows/Fonts/STXINGKA.TTF", #font_path=path.join(d,'simsun.ttc'), #设置背景色 background_color='white', #词云形状 mask=color_mask, #允许最大词汇 max_words=2000, #最大号字体 max_font_size=100 ) word_cloud=cloud.generate(cut_text)#产生词云 word_cloud.to_file("bilibilirankword.jpg")#保存图片 #显示词云图片 plt.imshow(word_cloud) plt.axis('off') plt.show() if__name__=='__main__': draw_wordcloud()
步骤以及注意点
1.首先要导入对应的库
2.文字会根据背景图而分布
3.背景图的选择对于最终效果很重要,选一个尽量大一点的背景图,这个背景图随便找就好,任何图片都可以不过最好大一些,图案不太复杂
4.如果字号小的话,可以调整字体,或者换个背景图
5.font_path要使用自己的字体库,不过你的电脑是windows的话,应该不用改,用我这个就可以,除此之外呢,这个字体如果是别的的话,可能会出现
中文不能产生词云图的现象,总之用我的就好了。
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。