Python通過文本和圖片生成詞云圖
使用現(xiàn)有的txt文本和圖片,就可以用wordcloud包生成詞云圖。大致步驟是:
1、讀取txt文本并簡單處理;
2、讀取圖片,以用作背景;
3、生成詞云對象,保存為文件。
需要用到3個(gè)庫:jieba(用于分割文本為詞語)、imageio(用于讀取圖片)、wordcloud(功能核心,用于生成詞云)。
我用簡歷和我的照片,生成了一個(gè)詞云圖:
代碼如下:
import jieba import imageio import wordcloud # 讀取txt文本 with open('resume.txt','r',encoding='utf-8') as f: text = f.read() # 簡單處理文本,刪除空格等多余字符 text = text.replace(' ','').replace('\t','').replace('\n','') # 使用jieba分隔詞語 wordlist = jieba.lcut(text) # ['aa','bb','cc'...] # print(wordlist) # 用空格連接各個(gè)詞語,又形成一個(gè)大字符串 string = ' '.join(wordlist) # 'aa bb cc' # 讀取圖片 image = imageio.imread('ding.jpg') # 生成詞云圖片 # 先實(shí)例化一個(gè)詞云對象 wc = wordcloud.WordCloud(width=image.shape[0], # 詞云圖寬度同原圖片寬度 height=image.shape[1], background_color='white', # 背景顏色白色 font_path='msyh.ttc', # 指定字體路徑,微軟雅黑,可從win自帶的字體庫中找 mask=image, # mask 指定詞云形狀圖片,默認(rèn)為矩形 scale=3) # 默認(rèn)為1,越大越清晰 # 再給詞云輸入文字 wc.generate(string) # 保存成文件 wc.to_file('wordcloud21.png')
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Python使用Pickle模塊進(jìn)行數(shù)據(jù)保存和讀取的講解
今天小編就為大家分享一篇關(guān)于Python使用Pickle模塊進(jìn)行數(shù)據(jù)保存和讀取的講解,小編覺得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來看看吧2019-04-04詳解DBSCAN算法原理及其Python實(shí)現(xiàn)
DBSCAN,即Density-Based Spatial Clustering of Applications with Noise,基于密度的噪聲應(yīng)用空間聚類,本文將詳細(xì)介紹DBSCAN算法的原理及其Python實(shí)現(xiàn),需要的可以參考下2023-12-12PyQt5 QListWidget選擇多項(xiàng)并返回的實(shí)例
今天小編就為大家分享一篇PyQt5 QListWidget選擇多項(xiàng)并返回的實(shí)例,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-06-06Python實(shí)現(xiàn)帶下標(biāo)索引的遍歷操作示例
這篇文章主要介紹了Python實(shí)現(xiàn)帶下標(biāo)索引的遍歷操作,結(jié)合具體實(shí)例形式分析了2種帶索引的遍歷操作實(shí)現(xiàn)方法及相關(guān)操作注意事項(xiàng),需要的朋友可以參考下2019-05-05Spring Boot中使用IntelliJ IDEA插件EasyCode一鍵生成代碼詳細(xì)方法
這篇文章主要介紹了Spring Boot中使用IntelliJ IDEA插件EasyCode一鍵生成代碼詳細(xì)方法,需要的朋友可以參考下2020-03-03tensorflow獲取預(yù)訓(xùn)練模型某層參數(shù)并賦值到當(dāng)前網(wǎng)絡(luò)指定層方式
今天小編就為大家分享一篇tensorflow獲取預(yù)訓(xùn)練模型某層參數(shù)并賦值到當(dāng)前網(wǎng)絡(luò)指定層方式,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-01-01Python NumPy實(shí)現(xiàn)數(shù)組排序與過濾示例分析講解
NumPy是Python的一種開源的數(shù)值計(jì)算擴(kuò)展,它支持大量的維度數(shù)組與矩陣運(yùn)算,這篇文章主要介紹了使用NumPy實(shí)現(xiàn)數(shù)組排序與過濾的方法,需要的朋友們下面隨著小編來一起學(xué)習(xí)吧2023-05-05