词云,也叫文字云,是一种应用广泛的数据可视化方法。是过滤掉文本中大量的低频信息,对出现频率较高的“关键词”予以视觉化的展现,词云使得浏览者只要一眼扫过文本就可领略文本的主旨。
Python中可导入wordcloud库,借助wordcloud库制作词云。wordcloud库是由C++编译的,pip install wordcloud时可能会提示缺少编译环境的错误,一种解决方法是先安装C++编译环境再安装wordcloud;更简单的方法是直接下载预编译好的wheel文件直接安装。wheel下载地址是https://www.lfd.uci.edu/~gohlke/pythonlibs/#wordcloud,根据本地Python版本和操作系统版本选择对应的whl文件下载。
例如用户操作系统是64位windows,安装的Python是64位的Python 3.8,那么对应下载的应该是wordcloud‑1.6.0‑cp38‑cp38m‑win_amd64.whl。下载后在相同路径下执行以下命令(以1.6.0版本号为例):
pip install wordcloud‑1.6.0‑cp38‑cp38m‑win_amd64.whl
或在任意路径下打开命令提示符,指明whl文件路径再pip 安装,方法如下,其中“C:\Users\zhaogh\Downloads\”为下载保存whl文件的路径:
pip install C:\Users\zhaogh\Downloads\wordcloud-1.6.0-cp38-cp38m-win_amd64.whl
一般我们使用 wordcloud 库中的 WordCloud() 方法绘制词云,该方法的主要参数如下:
wordcloud.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, include_numbers=False, min_word_length=0, collocation_threshold=30)
主要参数:
font_path:要使用的字体的路径。Linux系统下默认为DroidSansMono.ttf,用于中文词云时需要设置中文字体名,否则中文无法正常显示。
width=400, height=200:画布的默认宽度和高度
contour_color: 颜色值(默认值为“黑色”)
scale:计算和绘图之间的缩放倍数,默认为1。对于大型词云图像,使用比例而不是较大的画布大小会明显加快速度,但可能会导致对词的粗略拟合。
mask=None, (默认值=4):要使用的最小字体大小。当没有这么大的空间时就会停止。
max_words (default=200):显示词数最大值(默认值为200)
stopwords=None:将被略过的词,设为 None 时使用内置 STOPWORDS 列表。使用“generate_from_frequenci