思維導圖:
效果(語句版):
源碼:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
|
# -*- coding: utf-8 -*- """ created on tue mar 5 17:59:29 2019 @author: dell """ # ============================================================================= # 步驟: # 分割aaa = jieba.cut(str,cut_all=true/false) # 連接bbb = " ".join(aaa) # 制作xxx = wordcloud(background_color,font_path).generate(bbb) #bbb為字符串 # 顯示plt.imshow(xxx) #不能用plt.show() # 取消坐標軸的顯示matplotlib.pyplot.axis("off") # 存為圖片xxx.to_file(path) # ============================================================================= from wordcloud import wordcloud from matplotlib import pyplot as plt import jieba with open ( "pythontest.txt" ,encoding = "utf-8" ) as f: text = f.read() #textfromfile = open("pythontest",encoding = "utf-8").read() word_list = jieba.cut( "abvdefg" ,cut_all = true) #切成了一個個的字符串 xxx = " " .join(word_list) #"分隔符".join(需要被連接的數據) 將內容連接為字符串 mywordcloud = wordcloud(background_color = "white" ,font_path = 'c:\windows\fonts\stzhongs.ttf' ).generate(text) #mywordcloud = wordcloud(background_color="white",width=1000,height=860,font_path='c:\windows\fonts\stzhongs.ttf').generate(text) plt.axis( "off" ) #plt.show(mywordcloud) #沒有實際顯示,只有背景!!! plt.imshow(mywordcloud) mywordcloud.to_file( "詞云圖片.jpg" ) #保存為圖片 |
注意事項:
<一> jieba分詞
- 分詞后的返回值類型
- 分詞后的返回值
- 如何去除所要分離文本的中英文符號,還有空格符
1
2
3
4
5
6
7
8
9
|
import jieba wordlist = jieba.cut( "機器學習,算法對新鮮樣本!的適應能力:叫泛化能力" ,cut_all = false) print ( type (wordlist)) #類型是一個生成器generator print (wordlist) #本身是一個生成器對象generator object for list in wordlist: if list in ",./;'[]~!@#$%^&*()_+,。、;‘ 【】~!@#¥%……&*()——+《 》?:“{}<>?:\n\r" : none else : print ( list ) |
<二> 對詞圖進行重新上色的注意事項
- recolor(color_func=color) 正確
- recolor(color) 錯誤
<三> 讀取圖片時候的注意事項
a = np.array(image.open(路徑))
<四> python中文件路徑注意事項
- 使用 \\
- 使用 /
<五> spyder中的注釋快捷鍵
- 單行注釋:ctrl+1
- 塊注釋:ctrl+4
以上所述是小編給大家介紹的python數據可視化編程 - 詞云生成并保存(jieba+wordcloud)詳解整合,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!
原文鏈接:https://blog.csdn.net/qq_42292831/article/details/88199877