WorldCloud绘制词云图

一、WordCloud(['font_path=None', 'width=400', 'height=200', 'margin=2', 'ranks_only=None', 'prefer_horizontal=0.9', 'mask=None', 'scale=1', 'color_func=None', 'max_words=200', 'min_font_size=4', 'stopwords=None', 'random_state=None', "background_color='black'", 'max_font_size=None', 'font_step=1', "mode='RGB'", "relative_scaling='auto'", 'regexp=None','collocations=True', 'colormap=None', 'normalize_plurals=True', 'contour_width=0', "contour_color='black'", 'repeat=False'],
①WordCloud常用参数说明:
  • font_path 引入电脑字体路径
  • width\height 设置图片的大小
  • mask 引入导入进来的图片数据
  • max_words 设置绘制最小的词频
  • background_color 设置背景颜色
②实例
 1 #导入相关库
 2 from wordcloud import WordCloud
 3 import matplotlib.pyplot as plt
 4 import pandas as pd
 5 
 6 #读入数据
 7 with open('Walden.txt') as f:
 8     data = f.read()
 9 for i in ".,?;:":
10     data = data.replace(i,'')
11         
12 data = data.split()
13 # data_set = set(data)    #去重
14 # {i:data.count(i) for i in data_set}     #这种计算方法效力太低
15 data_cloud = pd.Series(data).value_counts()     #用value_counts可以快速计算频数,且排好顺序
16 
17 back_pic = plt.imread('heart.jpg')     #读进来的图片转换为多维矩阵
18 wc = WordCloud(font_path=r'C:\Windows\Fonts\GLECB.TTF',       #电脑字体存储的路径
19                 width=400, height=400,
20                 background_color='white',     #设置背景图
21                 max_words=200,       #设置词频为200以上的词语
22                 max_font_size=300,            #字体大小
23                 min_font_size=10,
24                 mask = back_pic)      #应用自定义图片
25 wc.fit_words(data_cloud)
26 
27 wc.to_file('heart.png')    #图片保存
28 plt.imshow(wc)
29 plt.axis('off')        #关闭坐标
30 plt.show()

结果:

posted on 2020-03-12 16:07  LiErRui  阅读(354)  评论(0)    收藏  举报

导航