自主學習:02詞雲圖製作
詞雲圖製作
之前爬了網易雲歌曲成都的評論,就想著做一個詞雲圖,搞一下。
下載相關庫
1、jieba庫
jieba庫是一箇中文分詞庫。
在pycharm的setting中,找到project interpreter,加號,manager repositories,更改下下載路徑。原路徑下載太慢了,最後就下載不下來了。
可以在Manage Repositories中新增映象
下面的都可以用:
阿里雲
http://mirrors.aliyun.com/pypi/simple
豆瓣(douban)
http://pypi.douban.com/simple
清華大學
https://pypi.tuna.tsinghua.edu.cn/simple
中國科學技術大學
http://pypi.mirrors.ustc.edu.cn/simple
改好後回到這個頁面,記得一定重新整理一下(description旁邊的那個重新整理),或者重新開啟一下setting,就可以啦!
2、wordcloud庫
wordcloud是詞雲圖庫。
在pycharm中下載wordcloud包,用各種映象都下不了,搞了一晚上。
所有,可以試試以下方法:
①在python路徑下可以先下載好wordcloud。
下載連結:https://www.lfd.uci.edu/~gohlke/pythonlibs/
在網頁的很下面很下面,下載對應自己python版本的wordcloud,我下載的是wordcloud-1.8.1-cp39-cp39-win_amd64.whl
②放在python\Scripts資料夾下面,用cmd開啟這個資料夾,執行安裝:
pip install wordcloud-1.8.1-cp39-cp39-win_amd64.whl
③然後在python路徑下的Lib/site-packages資料夾下,找到這兩個資料夾。
把這兩個資料夾複製放到pycharm中現在正在執行的檔案路徑裡,就好啦!!!
親測有效!
3、imageio包和停用詞
imageio是個影象模組,可以用作詞雲圖匯入影象,直接在pycharm中下載就好。
cn_stopwords.txt是停用詞文件,裡面有一些對我們分類沒有用的詞,譬如一、一個之類的,在百度搜索就能下載。
完整程式碼
# 匯入中文分詞庫
import jieba
# 詞雲圖庫
import wordcloud
# 影象模組
import imageio
file = open('chengdu01.txt', mode='r', encoding='utf-8')
txt = file.read()
# print(txt)
txt_list = jieba.lcut(txt)
# print('分詞結果',txt_list)
string = ''.join(txt_list)
# print('合併分詞',string)
# 製作詞雲圖
# 讀取影象
img = imageio.imread('鳥.png')
# 設定詞雲圖
wc = wordcloud.WordCloud(
width=1000, # 詞雲圖的寬
height=7000, # 詞雲圖的高
background_color='white', # 詞雲圖背景顏色
font_path='msyh.ttc', # 詞雲字型,微軟雅黑,win系統自帶
scale=10, # 字型大小
mask=img,
stopwords=set([line.strip() for line in open('cn_stopwords.txt', mode='r', encoding='utf-8').readline()])
)
print('正在繪製詞雲圖。。。。')
wc.generate(string)
wc.to_file('output.png')
print('詞雲圖製作成功!!!')
輸出結果
我用的是網易雲音樂成都,下面的評論。
最後生成的詞雲圖是這樣的:
最後的思考
其實程式碼很少,還很難理解,難的是,要去下載很多的庫,下都下不下來嗚嗚嗚搞了一晚上。
完成,去搞吃的。