当列表已经不能满足人们对信息的呈现时,标签云这种展现方式很好地满足了人们关注重点、突出趋势、显示偏好的浏览需求,本文简单介绍下使用python生成标签云。
有两种方式:
1. 自己实现 (可以参考http://www.i-alive.com/post/11/)
2.使用现有库,主要是pytagcloud
本文主要是利用pytagcloud这个库进行标签云的生成。首先需要安装它,不过在此之前如果你的机器上没有安装pygame和simplejson两个python包,则需要先下载安装
他们;这三个包安装完成以后,使用就很简单了,例子代码如下:
1 from pytagcloud import create_tag_image,make_tags 2 from pytagcloud.lang.counter import get_tag_counts 3 4 TEXT = ''' 5 python(2) compiler(1) olap(1) 6 recommender-System(2) crawler(1) python networkx(1)) 7 sinaWeibo(1) dremel(1) python-multi-thread(1) path(1) 8 mobile-Internet(1) hadoop hbase HDFS zookeeper(1) meachine-Learning(1) 9 similarity(1) hbase zookeeper(1) openSource(1) 10 python(2) python-multi-thread(1) mahout itembased-CF(1) 11 Levenshtein(1) 12 auto-Check(1) mahout itembased(1) Real-time data analysis 13 python(2) recommender-System(2) python recommender-system(1)) real(1) 14 mapreduce shuffle(1) video(1) 15 ant(1) Native Hadoop Libraries(1) search(1) 16 bigtable(1) nc(1) 17 recommender-system(1) bigData(1) data-analysis(1) 18 ''' 19 tags = make_tags(get_tag_counts(TEXT), maxsize=150) 20 create_tag_image(tags, 'cloud_large.png', size=(900, 600))
运行后在当前目录下会生成一个cloud_large.png结果文件,结果如下:
除了生成图片外,pytagcloud还可以生成html形式的标签云,可以用来与用户互动,可以参考pytagcloud的文档。