圖樣圖森破Pyecharts之詞云圖
在做文本分析和關(guān)鍵詞統(tǒng)計(jì)的時(shí)候,我們經(jīng)常會(huì)使用到詞云圖來展示關(guān)鍵詞詞頻。pyecharts當(dāng)然也支持詞云的生成,并且還可以自定義詞云形狀。
- from pyecharts import charts, options
- from pyecharts.globals import SymbolType
- import random
- wordcloud1 = charts.WordCloud(init_opts=options.InitOpts(width='800px', height='800px'))
- wordcloud1.add('詞云', data_pair=[(str(i), random.randrange(10, 100)) for i in range(100)],
- shape=SymbolType.DIAMOND,
- word_gap=5,
- word_size_range=[10, 50],
- rotate_step=30)
- wordcloud2 = charts.WordCloud(init_opts=options.InitOpts(width='1000px', height='1000px'))
- wordcloud2.add('詞云', data_pair=[(str(i), random.randrange(10, 100)) for i in range(600)],
- mask_image='bigdata.jpg',
- word_gap=10,
- word_size_range=[10, 100],
- rotate_step=30)
- page = charts.Page()
- page.add(wordcloud1).add(wordcloud2)
- page.render('wordcloud.html')
使用自帶的形狀來創(chuàng)建第一個(gè)詞云
(1)首先初始化詞云對(duì)象
(2)添加數(shù)據(jù)系列,data_pair是一個(gè)二元數(shù)組,分別表示關(guān)鍵詞及關(guān)鍵詞對(duì)應(yīng)數(shù)值大小
(3)shape即是整個(gè)詞云圖的形狀,內(nèi)置的有circle、diamond、star、triangle等等
(4)word_gap是指關(guān)鍵詞與關(guān)鍵詞之間的間隔
(5)word_size_range是關(guān)鍵詞字體大小范圍,關(guān)鍵詞按照數(shù)值大小映射到這個(gè)區(qū)間內(nèi),展示出相應(yīng)的字體大小
(6)rotate_step(6)rotate_step代表單詞旋轉(zhuǎn)角度范圍
看一下我們創(chuàng)建的第一個(gè)詞云,菱形:
除了使用自帶的形狀外,我們還可以導(dǎo)入外部圖片,比如第二個(gè)例子,給mask_image傳入一張圖片,最后輸出的詞云便是基于圖片形狀的:
傳入圖片
輸出詞云