这周参加一个创新培训,结束后有个答辩需要制作ppt,为了更好的展示内容,想到用词云图。本文分享一下如何基于Python的stylecloud制作酷炫的词云图。stylecloud是wordcloud优化改良版,操作简单,直接调用。
-
可以使用 Font Awesome 提供的免费图标更改词云的形状;
-
通过 palettable 更改调色板以自定义风格,更改背景颜色;
-
添加梯度使颜色按照特定方向流动。
1、基本说明
首先安装stylecloud和jieba库,jieba主要用来做语义分割用,因为使用的时候会遇到文本解析
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple stylecloud``pip install -i https://pypi.tuna.tsinghua.edu.cn/simple jieba
gen_stylecloud 的默认参数
def gen_stylecloud(text=None,` `file_path=None, # 输入文本/CSV 的文件路径` `size=512, # stylecloud 的大小(长度和宽度)` `icon_name='fas fa-flag', # stylecloud 形状的图标名称(如 fas fa-grin)。[default: fas fa-flag]` `palette='cartocolors.qualitative.Bold_5', # 调色板(通过 palettable 实现)。[default: cartocolors.qualitative.Bold_6]` `colors=None,` `background_color="white", # 背景颜色` `max_font_size=200, # stylecloud 中的最大字号` `max_words=2000, # stylecloud 可包含的最大单词数` `stopwords=True, # 布尔值,用于筛除常见禁用词` `custom_stopwords=STOPWORDS,` `icon_dir='.temp',` `output_name='stylecloud.png', # stylecloud 的输出文本名` `gradient=None, # 梯度方向` `font_path=os.path.join(STATIC_PATH,``'Staatliches-Regular.ttf'), # stylecloud 所用字体` `random_state=None, # 控制单词和颜色的随机状态` `collocations=True,` `invert_mask=False,` `pro_icon_path=None,` `pro_css_path=None):``
在 word.txt 中有下面的一段话
Python面向对象---类的基本使用``面向对象``类(class):是一种用来描述具有相同属性和方法的对象的集合。``类变量:类变量在整个实例化的对象中是公用的。一般定义在类中且在函数体之外。``方法:类中的函数``数据成员:类变量或者实例变量用于处理类及其实例对象的相关的数据。``方法重写:如果从父类继承的方法不能满足子类的需求,可以对其进行改写,这个过程叫方法的覆盖(override),也称为方法的重写。``局部变量:定义在方法中的变量,只作用于当前实例的类。``实例变量:在类的声明中,属性是用变量来表示的,这种变量就称为实例变量,实例变量就是一个用 self 修饰的变量。``继承:即一个派生类(derived class)继承基类(base class)的字段和方法。继承也允许把一个派生类的对象作为一个基类对象对待。就像我们定义一个fruit(水果)类,然后又定义了一个fruit类的派生类apple(苹果),它有着fruit类的一些属性和方法,也有着自己的一些独特的属性和方法,和fruit类是一种’is-a’的关系。``实例化:类的一个具体