当前位置:网站首页>Matlab论文插图绘制模板第41期—气泡图(bubblechart)
Matlab论文插图绘制模板第41期—气泡图(bubblechart)
2022-08-02 05:00:00 【阿昆的科研日常】
在之前的文章中分享过Matlab散点气泡图的绘制模板:
说是气泡图,本质上还是散点图,作为论文插图不是很标准。
所以,这一次来分享一下Matlab自带气泡图的绘制模板。
先来看一下成品效果:
特别提示:Matlab论文插图绘制模板系列,旨在降低大家使用Matlab进行科研绘图的门槛,只需按照模板格式添加相应内容,即可得到满足大部分期刊以及学位论文格式要求的数据插图。如果觉得有用可以分享给你的朋友。
模板中最关键的部分内容:
1. 数据准备
此部分主要是读取数据,定义各变量。
% 读取数据
load data.mat
% x坐标
xx = data(:,1);
% y坐标
yy = data(:,2);
% 特征(特征大小对应颜色/点的尺寸)
sz = data(:,3);
2. 颜色定义
颜色搭配比较考验个人审美,需要多加尝试。
这里直接用之前分享的addcolorplus工具中的渐变色:
%% 颜色定义
map = addcolorplus(300);
3. 气泡图绘制
使用‘bubblechart’命令,绘制未经美化的气泡图。
bubblechart(xx, yy, sz, sz,'MarkerFaceAlpha',0.7);
hTitle = title('BubbleChart');
hXLabel = xlabel('XAxis');
hYLabel = ylabel('YAxis');
其中,第一个‘sz’表示气泡的尺寸,第二个‘sz’表示气泡的颜色,这里我用了同一个特征,如果有需要,可以用气泡颜色表示另一种特征。
值得一提的是,bubblechart函数需要Matlab R2020b以上。
4. 细节优化
为了插图的美观,利用’colormap’命令赋上之前选择好的颜色:
% 赋色
colormap(map)
进一步,添加图例,调整字体字号、背景颜色等属性:
% 坐标轴美化
set(gca, 'Box', 'on', ... % 边框
'XGrid', 'off', 'YGrid', 'off', ... % 网格
'TickDir', 'in', 'TickLength', [.01 .01], ... % 刻度
'XMinorTick', 'off', 'YMinorTick', 'off', ... % 小刻度
'XColor', [.1 .1 .1], 'YColor', [.1 .1 .1],... % 坐标轴颜色
'XTick', 0:2:24,... % 坐标区刻度、范围
'XLim', [0 23],...
'YTick', 0:0.2:1.2,...
'YLim', [0 1.2])
% 添加图例
blgd = bubblelegend('Style','vertical',...
'BubbleSizeOrder','descending',...
'box','off',...
'Location','northeastoutside',...
'NumBubbles',3,... ...
'FontName', 'Helvetica',...
'FontSize', 9);
colorbar('Position',[0.79,0.11,0.03,0.4])
% 字体和字号
set(gca, 'FontName', 'Helvetica')
set([hXLabel, hYLabel], 'FontName', 'AvantGarde')
set(gca, 'FontSize', 10)
set([hXLabel, hYLabel], 'FontSize', 11)
set(hTitle, 'FontSize', 12, 'FontWeight' , 'bold')
% 背景颜色
set(gcf,'Color',[1 1 1])
设置完毕后,以期刊所需分辨率、格式输出图片。
%% 图片输出
figW = figureWidth;
figH = figureHeight;
set(figureHandle,'PaperUnits',figureUnits);
set(figureHandle,'PaperPosition',[0 0 figW figH]);
fileout = 'test';
print(figureHandle,[fileout,'.png'],'-r300','-dpng');
也可以尝试其它配色:
以上。
获取方式:
边栏推荐
猜你喜欢
"Digital reconstruction of the system, getting the CEO is the first step"
UE4 创建暂停和结束游戏UI
matlab simulink 模糊pid结合smith控制温度
go项目的打包部署
MySQL 灵魂 16 问,你能撑到第几问?
MySQL 8.0.29 decompressed version installation tutorial (valid for personal testing)
Android studio连接MySQL并完成简单的登录注册功能
MySQL如何创建用户
简道云-灵活易用的应用搭建平台
数学建模学习笔记:层次分析法(AHP)
随机推荐
[QNX Hypervisor 2.2用户手册]9.17 tolerance
Mysql 回表
面试测试工程师一般会问什么?测试主管告诉你
【热题】LeetCode 热题 HOT 100分类+题解
【HCIE】NO.30 OSPFv3的基本配置
pg数据库报错问题,有懂的吗
2022河南萌新联赛第(四)场:郑州轻工业大学 A - ZZULI
JDBC revisited
Android Studio 实现登录注册-源代码 (连接MySql数据库)
安全测试常见问题
navicat新建数据库
洗牌(DAY 100)
【云原生】DevOps 新纪元 | 史前的惨淡现实
MySQL 多表关联一对多查询实现取最新一条数据
MySQL 5.7 detailed download, installation and configuration tutorial
CodeTON Round 2 (Div. 1 + Div. 2, Rated, Prizes!)
在 .NET MAUI 中如何更好地自定义控件
递归实现指数型枚举(DAY 91)
MySQL 8.0.29 set and modify the default password
go项目的打包部署