思维导图:
效果(语句版):
源码:
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