<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
詞雲圖可以讓我們方便地識別出文字中的關鍵詞,其中單詞的大小代表它們的頻率。有了這個,我們甚至在閱讀之前就可以很好地瞭解文字的內容。雖然有很多免費的工具可以線上製作文字雲,但我們可以使用萬能的Python來客製化個性化的詞雲圖。
在本文中,我們將使用第三方Python庫stylecloud,有了該庫,可以通過簡短的幾行程式碼來製作漂亮的詞雲圖。如下所示:
閒話少說,我們直接開始吧。 :)
接下來,我們將用來製作詞雲圖的文字是偶像喬布斯在斯坦福大學演講的一部分。點選這裡可以獲得對應的 .txt 檔案或使用任何其他的文字來製作你自己的詞雲圖。
這裡我們可以直接使用pip來安裝該詞雲庫,程式碼如下:
pip3 install stylecloud
接著我們可以使用stylecloud.gen_stylecloud() 方法來生成詞雲圖,通過傳遞相應的文字 .txt 檔案的路徑和生成詞雲的圖示樣式。
在網站上,我們可以方便的找到可用於 stylecloud 的圖示樣式列表。在此範例中,我選擇了一個蘋果作為圖示。程式碼如下:
import stylecloud stylecloud.gen_stylecloud(file_path='SJ-Speech.txt', icon_name="fas fa-apple-alt")
上述程式碼執行後,在當前python檔案目錄下生成以png格式儲存詞雲圖,如下所示:
仔細觀察gen_stylecloud函數的相關引數,我們可以控制背景顏色、單詞的顏色、輸出檔案的名稱等。為此,我們檢視下面的程式碼:
stylecloud.gen_stylecloud(file_path='SJ-Speech.txt', icon_name='fas fa-apple-alt', colors='white', background_color='black', output_name='apple.png', collocations=False)
執行結果如下:
我們可以使用stop_words庫來處理文字中的停用詞,可以使用pip install stop_words
來安裝該庫。有了停用詞列表,我們也可以將其傳遞給在gen_stylecloud函數中的custom_stopwords引數。
樣例程式碼如下:
from stop_words import get_stop_words stop_words = get_stop_words('english') stylecloud.gen_stylecloud(file_path='SJ-Speech.txt', icon_name='fas fa-apple-alt', palette='cartocolors.qualitative.Pastel_3', background_color='black', output_name='apple.png', collocations=False, custom_stopwords=stop_words)
上述程式碼的執行結果如下:
在上述網站上有數百個免費圖示可用於 stylecloud,但是但有時我們可能希望使用自己的影象來為建立更加個性化的詞雲圖。此時,我們可以使用PIL庫來讀取影象,使用matplotlib來繪製我們的影象,使用wordcloud來製作對應的詞雲圖。
下述程式碼中使用蝙蝠的圖案來生成對應的詞雲圖,程式碼如下:
from wordcloud import WordCloud, ImageColorGenerator from PIL import Image import matplotlib.pyplot as plt import numpy as np # create a mask based on the image we wish to include my_mask = np.array(Image.open('batman-logo.png')) # create a wordcloud wc = WordCloud(background_color='white', mask=my_mask, collocations=False, width=600, height=300, contour_width=3, contour_color='black', stopwords=stop_words) with open('SJ-Speech.txt',encoding='gb18030',errors='ignore') as txt_file: texto = txt_file.read() wc.generate(texto) image_colors = ImageColorGenerator(my_mask) wc.recolor(color_func=image_colors) plt.figure(figsize=(20, 10)) plt.imshow(wc, interpolation='bilinear') plt.axis('off') wc.to_file('wordcloud2.png') plt.show()
執行結果如下:
本文詳細介紹瞭如何使用stylecloud庫來繪製各種樣式的詞雲圖,以突出顯示文字中相應的關鍵詞,並給出了客製化化改進顯示效果的樣例程式碼。
到此這篇關於Python製作個性化的詞雲圖範例講解的文章就介紹到這了,更多相關Python詞雲圖內容請搜尋it145.com以前的文章或繼續瀏覽下面的相關文章希望大家以後多多支援it145.com!
相關文章
<em>Mac</em>Book项目 2009年学校开始实施<em>Mac</em>Book项目,所有师生配备一本<em>Mac</em>Book,并同步更新了校园无线网络。学校每周进行电脑技术更新,每月发送技术支持资料,极大改变了教学及学习方式。因此2011
2021-06-01 09:32:01
综合看Anker超能充系列的性价比很高,并且与不仅和iPhone12/苹果<em>Mac</em>Book很配,而且适合多设备充电需求的日常使用或差旅场景,不管是安卓还是Switch同样也能用得上它,希望这次分享能给准备购入充电器的小伙伴们有所
2021-06-01 09:31:42
除了L4WUDU与吴亦凡已经多次共事,成为了明面上的厂牌成员,吴亦凡还曾带领20XXCLUB全队参加2020年的一场音乐节,这也是20XXCLUB首次全员合照,王嗣尧Turbo、陈彦希Regi、<em>Mac</em> Ova Seas、林渝植等人全部出场。然而让
2021-06-01 09:31:34
目前应用IPFS的机构:1 谷歌<em>浏览器</em>支持IPFS分布式协议 2 万维网 (历史档案博物馆)数据库 3 火狐<em>浏览器</em>支持 IPFS分布式协议 4 EOS 等数字货币数据存储 5 美国国会图书馆,历史资料永久保存在 IPFS 6 加
2021-06-01 09:31:24
开拓者的车机是兼容苹果和<em>安卓</em>,虽然我不怎么用,但确实兼顾了我家人的很多需求:副驾的门板还配有解锁开关,有的时候老婆开车,下车的时候偶尔会忘记解锁,我在副驾驶可以自己开门:第二排设计很好,不仅配置了一个很大的
2021-06-01 09:30:48
不仅是<em>安卓</em>手机,苹果手机的降价力度也是前所未有了,iPhone12也“跳水价”了,发布价是6799元,如今已经跌至5308元,降价幅度超过1400元,最新定价确认了。iPhone12是苹果首款5G手机,同时也是全球首款5nm芯片的智能机,它
2021-06-01 09:30:45