使用python实现个性化词云的方法

 更新时间:2017年06月16日 08:58:43   作者:baddog_  
最近看到可视化的词云,看到网上也很多这样的工具,但是都不怎么完美,有些不支持中文,有的中文词频统计得莫名其妙、有的不支持自定义形状、所有的都不能自定义颜色,于是网上找了一下,决定用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绘制雪景图

    python绘制雪景图

    这篇文章主要为大家详细介绍了python绘制雪景图,文中示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2019-12-12
  • pyecharts如何使用formatter回调函数的问题

    pyecharts如何使用formatter回调函数的问题

    这篇文章主要介绍了pyecharts如何使用formatter回调函数的问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2023-08-08
  • Python os.access()用法实例

    Python os.access()用法实例

    在本篇文章里小编给大家分享了关于Python os.access()用法实例内容以及相关知识点,需要的朋友们学习下。
    2019-02-02
  • Python PIL图片如何按比例裁剪

    Python PIL图片如何按比例裁剪

    这篇文章主要介绍了Python PIL图片如何按比例裁剪,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • pytorch中F.avg_pool1d()和F.avg_pool2d()的使用操作

    pytorch中F.avg_pool1d()和F.avg_pool2d()的使用操作

    这篇文章主要介绍了pytorch中F.avg_pool1d()和F.avg_pool2d()的使用操作,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-05-05
  • python FastApi实现数据表迁移流程详解

    python FastApi实现数据表迁移流程详解

    今天我们来聊一聊在FastApi里面,数据迁移工作,FastAPI是一个现代的,快速(高性能)python web框架。本文将利用fastapi实现数据表迁移功能,文中的示例代码讲解详细,需要的可以参考一下
    2022-08-08
  • anaconda打开闪退的解决过程

    anaconda打开闪退的解决过程

    这篇文章主要给大家介绍了关于anaconda打开闪退的解决过程,文中通过实例代码介绍的非常详细,对大家学习或者使用anaconda具有一定的参考学习价值,需要的朋友可以参考下
    2022-09-09
  • Python实现的计算马氏距离算法示例

    Python实现的计算马氏距离算法示例

    这篇文章主要介绍了Python实现的计算马氏距离算法,简单说明了马氏距离算法原理,并结合实例形式分析了Python实现与使用马氏距离算法的相关操作技巧,需要的朋友可以参考下
    2018-04-04
  • 使用Python将图片转正方形的两种方法实例代码详解

    使用Python将图片转正方形的两种方法实例代码详解

    这篇文章主要介绍了使用Python将图片转正方形的两种方法,本文通过实例代码给大家给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-04-04
  • 使用Python的pencolor函数实现渐变色功能

    使用Python的pencolor函数实现渐变色功能

    这篇文章主要介绍了使用Python的pencolor函数实现渐变色功能,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2021-03-03

最新评论