词云图一般由词汇、颜色、大小三种元素构成,其中颜色主要用于区分不同的词汇,而字体的大小可以直观地展示词汇数值的大小。
在之前的文章中,分享过一个简单的Matlab词云图绘制模板。
那么,我们进一步看一下进阶版的词云图。
先来看一下成品效果:
特别提示:Matlab论文插图绘制模板系列,旨在降低大家使用Matlab进行科研绘图的门槛,只需按照模板格式添加相应内容,即可得到满足大部分期刊以及学位论文格式要求的数据插图。如果觉得有用可以分享给你的朋友。
模板中最关键的部分内容:
1. 数据准备
此部分主要是读取原始数据。
% 读取数据
% 此数据为Matlab自带
load sonnetsTable
2. 颜色定义
作图不配色就好比做菜不放盐,总让人感觉少些味道。
但颜色搭配比较考验个人审美,需要多加尝试。
这里直接使用TheColor配色工具中的SCI权威配色库中的渐变色:
%% 颜色定义
C = TheColor('sci',2068);
% 统计单词数并生成颜色变量
numWords = height(tbl);
r = randi([1,size(C,1)],numWords,1);
colors = C(r,1:3);
获取方式:公众号(阿昆的科研日常)后台回复 TC
3. 进阶词云图绘制
使用‘wordcloud’命令,绘制进阶词云图。
wc = wordcloud(tbl,'Word','Count',... % 将单词和相应的单词大小分别指定为Word和Count变量
'Color',colors,... % 将单词颜色设置为C中随机值
'FontName','Arial',... % 修改单词字体
'Shape','rectangle',... % 修改词云形状
'LayoutNum',4,... % 修改单词布局(非负整数)
'MaxDisplayWords',100,...% 要显示的最大单词数
'SizePower',1.2); % 对尺寸应用的幂(正标量),即尺寸.^ SizePower
title('');
其中,'Shape'参数用于调整词云形状,包括长方形rectangle和椭圆形oval;'LayoutNum'参数用于修改单词布局,同样的值布局是一样的,需要慢慢尝试,选择理想的布局;’MaxDisplayWords'参数表示要显示的最大单词数量;'SizePower'参数表示对尺寸变量(本文为count)应用的幂,即尺寸.^ SizePower。
参数调整往往牵一发而动全身,因此最好在提前确定好几个参数的基础上,对少量参数进行调整。
值得一提的是,wordcloud函数需要Matlab R2017b以上。
4. 图片输出
绘制完成后,以期刊所需分辨率、格式输出图片。
%% 图片输出
print('test.png','-r300','-dpng');