MATLAB绘制气泡图可用来对比不同数据组数据、评估指标权重可视化等,需基于MATLAB2021a及以上版本进行绘制,该2021a之前版本无气泡图函数。
以评估指标权重可视化为例,AHP法经专家赋权后获得的判断矩阵如图1,现利用气泡图来将其可视化,更直观的给审稿人印象,绘制步骤为:
一、绘图
1、数据准备及初步处理
A=[1,5,4,4,3;0.2,1,0.333,0.5,0.25;0.25,3,1,0.5,0.333;0.25,2,2,1,0.333;0.333,4,3,3,1];%AHP所赋权值
data=A;
[r,c] = size(data);
x = 1:c;
y = 1:r;
[xx,yy] = meshgrid(x,y);
yy = flipud(yy);
2、颜色设定
mycolor = [0.474509803921569,0.650980392156863,0.807843137254902;...
0.682352941176471,0.823529411764706,0.898039215686275;...
0.941176470588235,0.972549019607843,0.862745098039216;...
0.992156862745098,0.968627450980392,0.705882352941177;...
1,0.901960784313726,0.603921568627451];% 该配色作者尤为喜欢
map = mycolor;
3、图片尺寸设置(单位:厘米)
figureUnits = 'centimeters';
figureWidth = 18;
figureHeight = 12;
figureHandle = figure;
set(gcf, 'Units', figureUnits, 'Position', [0 0 figureWidth figureHeight]);
hold on
4、气泡矩阵图绘制(调用bubblechart函数)
bubblechart(xx(:),yy(:),data(:)*10,data(:),'MarkerFaceAlpha',1);
colormap(map); %配色
bubblesize([10 30]);% 调节气泡大小
% 坐标轴美化
axis equal
set(gca, 'Box', 'on', ...
'XGrid', 'on', 'YGrid', 'on', ...
'TickDir', 'in', 'TickLength', [0 0], ...
'XMinorTick', 'off', 'YMinorTick', 'off', ...
'XColor', [.1 .1 .1], 'YColor', [.1 .1 .1],...
'XTick', 0:1:c+1,...
'XLim', [0 c+1],...
'YTick', 0:1:r+1,...
'YLim', [0 r+1],...
'XTickLabel',{'','A_1','A_2','A_3','B_1','B_2','B_3',''},...
'YTickLabel',{'','B_3','B_2','B_1','A_3','A_2','A_1',''})
ytickangle(90)
set(gca,'xaxislocation','top'); % 将x轴放在最上面,需要正常放在下面的不需要此行
blgd = bubblelegend('Style','vertical',...
'BubbleSizeOrder','descending',...
'box','off',...
'Location','northeastoutside',...
'NumBubbles',3,... ...
'FontName', 'Helvetica',...
'FontSize', 10,...
'Position', [0.79,0.59,0.17,0.347]);
colorbar('Position',[0.83,0.11,0.03,0.45]);%图例-颜色栏位置
% 字体字号
set(gca, 'FontName', 'Arial', 'FontSize', 10)
set([hXLabel,hYLabel], 'FontName', 'Arial', 'FontSize', 11)
set(hTitle, 'FontSize', 13, 'FontWeight' , 'bold')
% 背景颜色
set(gcf,'Color',[1 1 1])
5、绘图输出
运行上述代码后,即可输出图2,此时我们发现右上方气泡图的图例明显大于原始设置数据且与条形图例不对应,需要手动微调。
二、完善调整
点击图片属性检查器后,单击气泡图例,然后选择LimitLables 可以修改气泡图例数值(图3),将其手动修改为0.2和5即可(图4)。
文章来源:https://www.toymoban.com/news/detail-629285.html
三、成图
成图如图5所示,所想更具体的展示结果,可以通过添加文本框的形式对每个点数据进行标注。
文章来源地址https://www.toymoban.com/news/detail-629285.html
四、参考资料
到了这里,关于【MATLAB基础绘图第5棒】绘制气泡图的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!