详解Python数据可视化编程 - 词云生成并保存(jieba+WordCloud)

时间:2021-05-22

思维导图:

效果(语句版):

源码:

# -*- coding: utf-8 -*-"""Created on Tue Mar 5 17:59:29 2019@author: dell""" # =============================================================================# 步骤:# 分割aaa = jieba.cut(str,cut_all=True/False)# 连接bbb = " ".join(aaa)# 制作xxx = WordCloud(background_color,font_path).generate(bbb) #bbb为字符串# 显示plt.imshow(xxx) #不能用plt.show()# 取消坐标轴的显示Matplotlib.pyplot.axis("off")# 存为图片xxx.to_file(path)# ============================================================================= from wordcloud import WordCloudfrom matplotlib import pyplot as pltimport jieba with open("pythonTest.txt",encoding="utf-8") as f: text = f.read()#textFromFile = open("pythonTest",encoding = "UTF-8").read() word_list = jieba.cut("ABVDEFG",cut_all=True) #切成了一个个的字符串xxx = " ".join(word_list) #"分隔符".join(需要被连接的数据) 将内容连接为字符串 myWordCloud = WordCloud(background_color="white",font_path='C:\windows\Fonts\STZHONGS.TTF').generate(text)#myWordCloud = WordCloud(background_color="white",width=1000,height=860,font_path='C:\windows\Fonts\STZHONGS.TTF').generate(text)plt.axis("off")#plt.show(myWordCloud) #没有实际显示,只有背景!!!plt.imshow(myWordCloud) myWordCloud.to_file("词云图片.jpg") #保存为图片

注意事项:

<一> jieba分词

  • 分词后的返回值类型
  • 分词后的返回值
  • 如何去除所要分离文本的中英文符号,还有空格符
  • import jiebawordList = jieba.cut("机器学习,算法对新鲜样本!的适应能力:叫泛化能力",cut_all=False)print(type(wordList)) #类型是一个生成器generatorprint(wordList) #本身是一个生成器对象generator Objectfor list in wordList: if list in ",./;'[]~!@#$%^&*()_+,。、;‘ 【】~!@#¥%……&*()——+《 》?:“{}<>?:\n\r": None else: print(list)

    <二> 对词图进行重新上色的注意事项

  • recolor(color_func=color) 正确
  • recolor(color) 错误
  • <三> 读取图片时候的注意事项

    a = np.array(Image.open(路径))

    <四> python中文件路径注意事项

  • 使用 \\
  • 使用 /
  • <五> Spyder中的注释快捷键

  • 单行注释:Ctrl+1
  • 块注释:Ctrl+4
  • 以上所述是小编给大家介绍的Python数据可视化编程 - 词云生成并保存(jieba+WordCloud)详解整合,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对网站的支持!

    声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

    相关文章