【Python】使用stylecloud绘制词云

使用前需先将文本分割成词组

#读入文件内容(以sushi.txt为例)
f2=open("sushi.txt","r",encoding="utf-8")
res=f2.read().split(" ")

#将分词结果中长度大于3(4个字及以上)的筛选出来
word_list=[word.strip() for word in res if len(word.strip())>3]

#查看词频
from collection import Counter
c=Counter(word_list)
cc=sorted(c.items(),key=lambda x:x[1],reverse=True)
for k in cc:
    print(k)



#生成词云
import stylecloud

#设置字体
#font=r'C:\Windows\Fonts\simkai.ttf' #需要在你电脑上确认字体文件的存在
font=r'./fonts/AlibabaPuHuiTi-2-65-Medium.ttf'
#使用阿里巴巴普惠字体2.0,下载地址为https://www.alibabafonts.com/#/font

stylecloud.gen_stylecloud(text=' '.join(word_list),                  #输入字体
                          file_path="sushi.txt",                     #输入文本的路径
                          gradient=None,                             #渐变方向(梯度方向),默认是horizontal
                          font_path=font,                            #词云字体
                          size=(600,800),                            #(词云长度,词云宽带),调大可以提高图片的清晰度                   
                          icon_name='fas fa-heart',                  #词云形状选项,默认为fas fa-flag
                          palette='colorbrewer.diverging.BrBG_7',    #词云调色盘选项,默认为cartocolors.qualitative.Bold_6
                          color=None                                 #文本颜色
                          background='white'                         #背景颜色
                          max_font_size=200                          #词云中的最大字号
                          max_word=2000                              #词云可包含的最大单词数
                          stopwords=True,                            #布尔值,用于筛选常见禁用词
                          custom_stopwords=["我","不"],              #设置停用词列表
                          icon_dir='.temp',
                          output_name='stylecloud词云.png',          #设置输出png文件名
                          random_state=None,                         #控制单词和颜色的随即状态
                          collocations=True,                         #是否包括两个单词的搭配
                          invert_mask=False,                         #是否反转图标掩码
                          pro_icon_path=None,
                          pro_css_path=None)

其中最主要、最直观、最需要调整的参数就是icon_name和palette

icon_name决定了最终所生成词云图的形状,更多样式直接参考官网此页面,选择需要的形状即可

示例如下:

icon_name='fas fa-flag'  #旗帜
icon_name='fab fa-qq'    #企鹅
icon_name='fas fa-plane' #飞机
icon_name='fas fa-smile' #笑脸

palette即为选择生成的词云图中的文本颜色调配模式

如果需要更多的调色方案,在官网查看即可


参考资料:

【直播】Python数据分析+人工智能(训练营)_哔哩哔哩_bilibili

stylecloud生成词云图中gen_stylecloud方法参数详解_stylecloud参数-CSDN博客

更多细节参考:https://github.com/minimaxir/stylecloud

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值