摘要:前言今天教大家用模塊來生成詞云,我讀取了一篇小說并生成了詞云,先看一下效果圖效果圖一效果圖二根據效果圖分析的還是比較準確的,小說中的主人公就是程理,所以出現次數最多。
前言
今天教大家用wrodcloud模塊來生成詞云,我讀取了一篇小說并生成了詞云,先看一下效果圖:
效果圖一:
效果圖二:
根據效果圖分析的還是比較準確的,小說中的主人公就是“程理”,所以出現次數最多。圖中有兩種模式,一種是默認的模式,另一種是自己添加圖片作為背景。下面我就帶大家一起來學習怎樣去生成詞云!
wordcloud的安裝對于新人來說安裝wordcloud模塊就是一大關,我們一般都是通過Pycharm或者PIP安裝的,但是在安裝wordcloud時會提示錯誤,如下:
我的解決方法是直接訪問下面的網址,根據你的電腦和py版本下載對應的whl文件
https://www.lfd.uci.edu/~gohl...
下載完成后,把whl文件放在pip路徑下,輸入下面的代碼,記住代碼的whl文件名一定是適合你的文件名,我只是舉例:
pip?install?wordcloud-1.4.1-cp36-cp36m-win32.whl
運行后會顯示安裝成功
wordcloud的簡單用法wordcloud的基本方法,看源碼如下:
各個參數大家應該一看就明白,另外wordcloud還有幾個其他方法,比如fit_words,generate(text),to_file(filename)等等都是非常好理解的。
wordcloud生成詞云效果圖一的代碼:
from?wordcloud?import?WordCloud import?matplotlib.pyplot?as?plt ?#繪制圖像的模塊 import??jieba ? ? ? ? ? ? ? ? ? ?#jieba分詞 path_txt="C://Users/Administrator/Desktop/all.txt" f = open(path_txt,"r",encoding="UTF-8").read() # 結巴分詞,生成字符串,wordcloud無法直接生成正確的中文詞云 cut_text =?" ".join(jieba.cut(f)) wordcloud = WordCloud( ? ?#設置字體,不然會出現口字亂碼,文字的路徑是電腦的字體一般路徑,可以換成別的 ? ?font_path="C:/Windows/Fonts/simfang.ttf", ? ?#設置了背景,寬高 ? ?background_color="white",width=1000,height=880).generate(cut_text) plt.imshow(wordcloud, interpolation="bilinear") plt.axis("off") plt.show()
運行后:
效果圖二,給詞云加上圖片背景,代碼如下:
from?PIL?import?Image from?wordcloud?import?WordCloud, ImageColorGenerator import?matplotlib.pyplot?as?plt import?numpy?as?np import??jieba def?GetWordCloud(): ? ?path_txt =?"C://Users/Administrator/Desktop/all.txt" ? ?path_img =?"C://Users/Administrator/Desktop/timg.jpg" ? ?f = open(path_txt,?"r", encoding="UTF-8").read() ? ?background_image = np.array(Image.open(path_img)) ? ?# 結巴分詞,生成字符串,如果不通過分詞,無法直接生成正確的中文詞云,感興趣的朋友可以去查一下,有多種分詞模式 ? ?#Python join() 方法用于將序列中的元素以指定的字符連接生成一個新的字符串。 ? ?cut_text =?" ".join(jieba.cut(f)) ? ?wordcloud = WordCloud( ? ? ? ?# 設置字體,不然會出現口字亂碼,文字的路徑是電腦的字體一般路徑,可以換成別的 ? ? ? ?font_path="C:/Windows/Fonts/simfang.ttf", ? ? ? ?background_color="white", ? ? ? ?# mask參數=圖片背景,必須要寫上,另外有mask參數再設定寬高是無效的 ? ? ? ?mask=background_image).generate(cut_text) ? ?# 生成顏色值 ? ?image_colors = ImageColorGenerator(background_image) ? ?# 下面代碼表示顯示圖片 ? ?plt.imshow(wordcloud.recolor(color_func=image_colors), interpolation="bilinear") ? ?plt.axis("off") ? ?plt.show() if?__name__ ==?"__main__": ? ?GetWordCloud()
運行后:
如果有不懂的朋友可以直接在公眾號上加我的微信,希望對大家有所幫助!
大家可以關注我的微信公眾號:「秦子帥」一個有質量、有態度的公眾號!
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/41806.html
Python pyecharts作為常用的數據可視化軟件,能夠清晰的將海量的數據,去做一個拆分,要是更直觀的去查看數據圖表的話,就需要去制作云圖了?那么,怎么制作云圖呢?下面就給大家詳細的做個解答?! ≡~云圖 什么是詞云圖,相信大家肯定不會感到陌生,一本書統計里面出現的詞頻,然后可視化展示,讓讀者快速的了解這個主題綱要,這就是詞云的直接效果。 詞云圖系列模板 固定模式詞云圖 修改一些參...
摘要:時間永遠都過得那么快,一晃從年注冊,到現在已經過去了年那些被我藏在收藏夾吃灰的文章,已經太多了,是時候把他們整理一下了。那是因為收藏夾太亂,橡皮擦給設置私密了,不收拾不好看呀。 ...
摘要:上面是生成詞云的方法封裝,還有一些其他方法根據詞頻生成詞云根據文本生成詞云根據詞頻生成詞云根據文本生成詞云將長文本分詞并去除屏蔽詞此處指英語,中文分詞還是需要自己用別的庫先行實現,使用上面的對現有輸出重新著色。 對于數據展示這一塊有時候會用到詞云,python中提供的wordcloud模塊可以很靈活的完成生成詞云除了使用python提供的wordcloud模塊以為還有在線的生成方式ht...
摘要:處理文件最終得到的字符串得到所有的文本之后,使用結巴分詞,處理成單個的詞語。 文章鏈接:https://mp.weixin.qq.com/s/NmJjTEADV6zKdT--2DXq9Q 回看18年,最有成就的就是有了自己的 博客網站,堅持記錄,寫文章,累計寫了36篇了,從一開始的難以下手,到現在成為一種習慣,雖然每次寫都會一字一句斟酌,但是每次看到產出,內心還是開心的,享受這樣的過...
摘要:庫常規方法方法描述例子向對象中加載文本將詞云輸出為圖像文件,或格式應用實例配置對象參數加載詞云文本輸出詞云文件分隔以空格分隔單詞統計單詞出現次數并過濾字體根據統計配置字號布局顏色環境尺寸配置對象參數參數參數描述例子指定詞云對象生成圖片的寬度 wordcloud庫常規方法 w = wordcloud.WordCloud() 方法 描述 例子 w.generate(txt) 向w...
閱讀 2793·2021-10-11 10:57
閱讀 2401·2021-08-27 16:20
閱讀 1384·2019-08-30 13:03
閱讀 1562·2019-08-30 12:50
閱讀 3335·2019-08-29 14:16
閱讀 1561·2019-08-29 11:12
閱讀 1613·2019-08-28 17:53
閱讀 2892·2019-08-27 10:58