写了一半,明天继续
目录
- 一基础用法
- 二、WordCloud类形参说明
- 2.1 常用参数
- 2.11 字体 font_path
- 2.12 画布尺寸 width、hight
- 2.13 比例(缩放)scale
- 2.14 颜色 colormap
- 2.15 颜色color_func
- 2.16 组合频率collocations
- 2.17 遮罩(蒙版)mask
- 2.2 不常用参数
以该视频的弹幕文件为例,我已保存为txt文件。
【4K60FPS】周杰伦《暗号》 神级现场!The one演唱会live
一基础用法
wd = WordCloud().generate('要生成词云的的文本文件')
二、WordCloud类形参说明
通过参数可以指定词云图像的字体、大小、配色等。
总体示例:
wd_0 = WordCloud(font_path='simhei.ttf',colormap="spring",width=800,height=400,
collocations=False,scale=5).generate(self.Read_txt())
一般来说设置上面的字体、尺寸、配色、缩放等参数就足够了。本文对WordCloud所有的形参进行说明。
2.1 常用参数
2.11 字体 font_path
| font_path : string
| Font path to the font that will be used (OTF or TTF).
| Defaults to DroidSansMono path on a Linux machine. If you are on
| another OS or don't have this font, you need to adjust this path.
设置示例:
font_path='simhei.ttf'
默认值:Linux的DroidSansMono 路径,一般windows是没有的,需要设置。
否则词云可能无法正确显示文字内容(类似于乱码),一般字体文件名为 name.ttf
这种格式。
查看本机全部字体可以在:C:\Windows\Fonts
路径下查看,或者从控制面板>外观和个性化>字体
打开。
字体名称并不是仿宋、楷体这种,而是要在对应的字体上右键>属性,来查看其名称,如华文彩云这个字体的名称是:STCAIYUN.TTF
2.12 画布尺寸 width、hight
| width : int (default=400)
| Width of the canvas.
|
| height : int (default=200)
| Height of the canvas.
默认是400x200,单位:像素。
2.13 比例(缩放)scale
| scale : float (default=1)
| Scaling between computation and drawing. For large word-cloud images,
| using scale instead of larger canvas size is significantly faster, but
| might lead to a coarser fit for the words.
若画布设置为 400x200,若scale = 5,则词云图像的尺寸变成 2000x1000(像素)。
建议设置较小的画布尺寸,然后缩放成目标大小当然缩放系数要适当,太大也不合适
若直接将画布尺寸设置成2000x1000,虽然尺寸是一样的,但加载时间会比设置scale=5长很多.
词云的像素尺寸越大,越清晰,词频较低的字号很小的词语也能看清了。
2.14 颜色 colormap
| colormap : string or matplotlib colormap, default="viridis"
| Matplotlib colormap to randomly draw colors from for each word.
| Ignored if "color_func" is specified.
|
| .. versionadded: 2.0
colormap 是一个预定义的 Matplotlib colormap**。
默认值是:viridis。
一般我们使用matplotlib的colormap即可:
Matplotlib 提供了多种预定义的 colormap,如 viridis、 jet、 winter、 summer、 spring、
autumn、 cool、 hot、 gray 等
格式:
colormap = 'spring'
注:如果设置了color_func参数,则这一项失效。
2.15 颜色color_func
| color_func : callable, default=None
| Callable with parameters word, font_size, position, orientation,
| font_path, random_state that returns a PIL color for each word.
| Overwrites "colormap".
| See colormap for specifying a matplotlib colormap instead.
| To create a word cloud with a single color, use
| ``color_func=lambda *args, **kwargs: "white"``.
| The single color can also be specified using RGB code. For example
| ``color_func=lambda *args, **kwargs: (255,0,0)`` sets color to red.
color_func 可以是一个预定义的函数,或者是一个自定义函数,用来确定每个词的颜色。
一般我们使用colormap这个参数就够了。
color_func示例:
设置词云颜色为白色:
color_func=lambda *args, **kwargs: "white"
2.16 组合频率collocations
| collocations : bool, default=True
| Whether to include collocations (bigrams) of two words. Ignored if using
| generate_from_frequencies.
collocations 是一个用来控制词云图像中词语组合频率的参数。当 collocations 被设置为 True 时,wordcloud 将会考虑两个词之间的关系来计算它们的频率。
建议设置为False。
对比如下:
1. collocations=True
2.collocations=False
2.17 遮罩(蒙版)mask
| mask : nd-array or None (default=None)
| If not None, gives a binary mask on where to draw words. If mask is not
| None, width and height will be ignored and the shape of mask will be
| used instead. All white (#FF or #FFFFFF) entries will be considerd
| "masked out" while other entries will be free to draw on. [This
| changed in the most recent version!]
常常用来设置词云图像的形状,如果设置了mask,将由遮罩图像的尺寸来定义词云图像的尺寸。
mask的值是一个图像的二进制数据(矩阵),可用ndarray表示。