Python詞雲展示庫——wordcloud


(1).介紹

  wordcloud是優秀的詞雲展示第三方庫,wordcloud能夠將一段文本變成一個詞雲。

  詞雲就是將詞語通過圖形可視化的方式,直觀和藝術的展示出來。詞雲在我們的生活中經常能夠看到,無論是中文的詞雲還是英文的詞雲。

  安裝第三方庫需要使用pip工具,在命令行下運行安裝命令(不是IDLE)。注意:需要將Python目錄和其目錄下的Scripts目錄加到環境變量中

  使用命令pip install wordcloud安裝第三方庫,安裝之后會提示successfully installed,告知是否安裝成功。

(2).使用說明

  wordcloud庫把詞雲當做一個WordCloud對象,即wordcloud.WordCloud()是一個代表文本對應詞雲的對象,一個詞雲就是一個WordCloud對象。wordcloud庫可以根據文本中詞語出現的頻率等一系列參數來繪制詞雲,在繪制詞雲時,詞雲的形狀、尺寸、顏色包括字體都是可以設定的。

  wordcloud庫對具體詞雲的繪制有一個基本的思路,思路是用wordcloud庫中的WordCloud對象來表明一個詞雲,WordCloud對象是一個詞雲的對象基礎,然后向這個對象中配置參數、加載文本、輸出到文件中。這同樣也是詞雲繪制的步驟:1.配置對象參數;2.加載詞雲文本;3.輸出詞雲文件。為了完成后兩個步驟,我們需要將WordCloud對象賦給一個變量名,使得后兩個步驟可以調用,例如:w=wordcloud.WordCloud()。

  配置對象參數(參數之間使用逗號隔開):

參數 描述
width

指定詞雲對象生成圖片的寬度,默認400像素,例如:

>>>w=wordcloud.WordCloud(width=600)

height

指定詞雲對象生成圖片的高度,默認200像素,例如:

>>>w=wordcloud.WordCloud(height=400)

min_font_size

指定詞雲中字體的最小字號,默認4號,例如:

>>>w=wordcloud.WordCloud(min_font_size=10)

max_font_size

指定詞雲中字體的最大字號,根據高度自動調節,例如:

>>>w=wordcloud.WordCloud(max_font_size=20)

font_step

指定詞雲中字體字號的步進間隔,默認為1

>>>w=wordcloud.WordCloud(font_step=2)

font_path

指定字體文件的路徑,默認為None

>>>w=wordcloud.WordCloud(font_path="msyh.ttc")

max_words

指定詞雲顯示的最大單詞數量,默認200,例如:

>>>w=wordcloud.WordCloud(max_words=20)

stop_words

指定詞雲的排除單詞列表,即不顯示的單詞列表,例如:

>>>w=wordcloud.WordCloud(stop_words={"Python"})

mask

指定詞雲形狀(提供白色的形狀圖片),默認為長方形,在使用時需要引用imread()函數,例如:

>>>from scipy.misc import imread

>>>mk=imread("pic.png")

>>>w=wordcloud.WordCloud(mask=mk)

background_color

指定詞雲圖片的背景顏色,默認為黑色,例如:

>>>w=wordcloud.WordCloud(background_color="white")

  加載詞雲文本方法(默認前提w=wordcolud.WordCloud()):

方法 描述
w.generate(txt)

向WordCloud對象w中加載文本txt,例如:

>>>w.generate("Python and WordCloud")

 

  輸出詞雲文件方法(默認前提w=wordcolud.WordCloud()):

方法 描述
w.to_file(filename)

將詞雲輸出為圖像文件,采用.png或.jpg格式,例如:

>>>w.to_file("outfile.png")

  在不指定圖片寬和高時,默認圖片寬為400像素,高位200像素。

  由文本變為詞雲,wordcloud庫大概做了4件事:1.wordcloud庫以空格為分隔符,將文本分割成單詞;2.wordcloud庫會在文本中統計每一個單詞出現的次數,單詞出現次數越多,那么單詞顯示的詞雲效果的字體越大,反之則反。並且將只有1到2個字符的單詞過濾掉;3.wordcloud庫會根據統計單詞出現的次數,為不同的單詞配置顯示的字號;4.進行布局。

  英文詞雲實例:

import wordcloud
txt="life is short,you need python"
w=wordcloud.WordCloud( \
    background_color="white")
w.generate(txt)
w.to_file("pywcloud.png")

  生成的圖片

  中文詞雲實例:

import jieba
import wordcloud
txt="程序設計語言是計算機能夠理解和\
識別用戶操作意圖的一種交互體系,它按照\
特定規則組織計算機指令,使計算機能夠自\
動進行各種運算處理"
w=wordcloud.WordCloud( width=1000,\
    font_path="msyh.ttf",height=700)  #必須設置字體,否則中文會顯示成方框。這里字體文件與.py文件處於同一目錄下
w.generate(" ".join(jieba.lcut(txt)))
w.to_file("pywcloud.png")

  生成的圖片


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM