• 技术文章 >后端开发 >Python教程

    如何使用python来实现个性化词云的示例代码分享

    黄舟黄舟2018-05-25 09:39:56原创2185
    最近看到可视化的词云,看到网上也很多这样的工具,但是都不怎么完美,有些不支持中文,有的中文词频统计得莫名其妙、有的不支持自定义形状、所有的都不能自定义颜色,于是网上找了一下,决定用python绘制词云

    先上图片


    词云图

    需要模板

    pip install jieba
    pip install wordcloud

    还需要安装另外两个东西这两个我也不太懂借鉴百度写上去的

    pip install scipy
    pip install matplotlib

    因为用ubuntu系统所有没有windows那么麻烦,也没有那么多报错

    看到好多人制作自己的词云有没有一丝丝的激动啊,有激动就要马上去做,冲动才是第一创造力。

    jieba是一款很恨很好用的中文分词模板

    jeiba中文文档

    至于wordcloud没有中文文档不过咱会猜啊,英文不好咱们可以猜啊,查看源代码猜。

    先把我全部代码贡献上来

    #-*-coding:utf-8—-*-
    import jieba.analyse
    from wordcloud import WordCloud,ImageColorGenerator
    from scipy.misc import imread
    import matplotlib.pyplot as plt
    
    class wc:
      def init(self,txt_file,img_file,font_file):
       self.f = open(txt_file,'r')
      self.txt = self.f.read()
       self.f.close()
      self.tags = jieba.analyse.extract_tags(self.txt,topK=100)
      #topK说白了就是返回几个关键词
      self.text = ' '.join(self.tags) #把分词链接起来,加空格因为英文靠空格分词
      self.img = imread(img_file)
      self.wc = WordCloud(font_path=font_file,background_color='white',max_words=100,mask=self.img,max_font_size=80)
    ###直接在这里进行猜###
    #font_path指的是字体文件路径,因为wordcloud自带的字体不支持中文所以我们要指定一个字体文件,否者输出的图片全是框框
    #background_color 默认是黑色 我设置成白色
    #max_words最大显示的词数
    #mask 背景图片
    #max_font_size 最大字体字号
      self.word_cloud = self.wc.generate(self.text)
    
      def show_wc(self):
      #img_color = ImageColorGenerator(self.img)
        plt.imshow(self.word_cloud)
    #可以通过 plt.imshow(self.wc.recolor(color_func=img_color))使图片颜色跟字体颜色一样
        plt.axis("off")
        plt.show()
    
    
    if name=='main':
      mywc = wc('sanwen.txt','out.png','font.ttc')
      mywc.show_wc()


    使用wc.recolor(color_func=img_color)

    以上就是如何使用python来实现个性化词云的示例代码分享的详细内容,更多请关注php中文网其它相关文章!

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
    上一篇:关于Python操作SQLite数据库的方法步骤详解 下一篇:python中MySQLdb模块在linux环境下的安装方法介绍
    Web大前端开发直播班

    相关文章推荐

    • 一起聊聊Python的编码样式• 带你搞懂Python反序列化• 一起来分析Python怎么操作XML文件• 归纳整理!Python实用技巧总结• 归纳整理python正则表达式解析
    1/1

    PHP中文网