MATLAB | 科研绘图第二十期散点密度双柱状图

简介: MATLAB | 科研绘图第二十期散点密度双柱状图

MATLAB | 科研绘图第二十期散点密度双柱状图

微信公众号由于改变了推送规则,为了每次新的推送可以在第一时间出现在您的订阅列表中,记得将本公众号设为星标或置顶哦~

绘图教程及颜色数据链接见文末哦~

1 出图效果

好看的图幅是一篇SCI被录用的关键~

其中如下图涉及到3个子函数。

2 1行1列部分绘图代码


%% 表示散点分布的双柱状统计图

%% Made by Lwcah in 2023-06-30(公众号:Lwcah)
%% 公众号:Lwcah
%% 知乎、B站、小红书、抖音同名账号:Lwcah,感谢关注~
%% 更多MATLAB+SCI绘图教程敬请观看~

%% 清除变量
close all;clear all;clc;

%% 1行1列
%% 一幅图的时候figureWidth = 8.5;figureHeight = 8;调整这两个参数就可以
%定义整幅图出现的在电脑屏幕上的位置以及长和宽
%这里有必要解释一下为什么figureWidth要设置为8.5;
%因详细解释需要很长的篇幅,请转公众号观看该天的文章。
figureHandle = figure;
figureUnits = 'centimeters';
figureWidth = 8.5;
figureHeight = 6;
set(gcf, 'Units', figureUnits, 'Position', [28 20 figureWidth figureHeight]);
% 注:28代表出图时图的左下角相对于整个电脑屏幕的左下角向左偏移28个单位,向上偏移20个单位。
% 可自行调节两个数字让图出在自己屏幕的某个位置

%% 定义字体和字号大小
%% 通常的SCI一般Arial字体和10字号通用
fontnamed='华文中宋';  % 字号名字Arial
ssize=10;             % 字号大小
%% 如果是中文论文可以相应的更改字号名字如下
% '华文中宋' '华文仿宋' '华文宋体' '华文新魏' '华文楷体'
% '华文琥珀' '华文细黑' '华文行楷' '华文隶书' '宋体'
% '方正姚体' '微软雅黑' '方正舒体' '新宋体'
% '幼圆' '楷体' '等线' '隶书' '黑体'

%% 给定绘图颜色
C1 = chinesecolors(150); % 靛青
C2 = chinesecolors(523); % 玫瑰灰
C3 = chinesecolors(343); % 香水玫瑰
C4 = chinesecolors(148); % 海涛蓝

%% 数据
load x
load y

%% 表示散点分布的双柱状统计图绘图

subplot(2,2,2);
%% 绘图
res_CRMN                                           = [];
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N]=plotcc(res_CRMN,x,y,C1,C2);% 用于存储反演的精度结果
% 是否添加X,Y轴标签
title('scatter density 1','fontsize',ssize,'FontName',fontnamed,'horiz','center');
ylabel('Y-axis','fontsize',ssize,'FontName',fontnamed);
xlabel('X-axis','fontsize',ssize,'FontName',fontnamed);
% text(-0.9,4.5,'(a)','fontsize',ssize,'FontName',fontnamed);
text(-0.4,4.5,str_C,'fontsize',ssize,'FontName',fontnamed);
text(-0.4,3.9,str_RMSE,'fontsize',ssize,'FontName',fontnamed);
text(-0.4,3.3,str_M,'fontsize',ssize,'FontName',fontnamed);
text(-0.4,2.7,str_N,'fontsize',ssize,'FontName',fontnamed);
axis on; h1 = gca;
hold on;box on;grid on;

subplot(2,2,4);
[n1,ctr1] = hist(x,20);
bar(ctr1,-n1,1,'FaceColor',C4);%,'EdgeColor','none','FaceAlpha',0.7
axis off; h2 = gca;
h2.XLim=h1.XLim;
h2.XColor='none';
h2.YTickLabel='';
h2.TickDir='out';

subplot(2,2,1);
[n2,ctr2] = hist(y,20);
barh(ctr2,-n2,1,'FaceColor',C4);%,'EdgeColor','none','FaceAlpha',0.7
axis off; h3 = gca;
h3.YLim=h1.YLim;
h3.YColor='none';
h3.XTickLabel='';
h3.TickDir='out';

h1.Position = [0.31 0.35 0.53 0.55];
h2.Position = [0.31 0.03 0.53 0.15];
h3.Position = [0.03 0.35 0.15 0.55];

%% 修图的标准格式代码
% text(0.5,0.9,'(a) XXX','fontsize',ssize,'FontName',fontnamed);%,'horiz','center'
% title('1000');
% xlabel('X-axis','fontsize',ssize,'FontName',fontnamed);
% ylabel('Y-axis','fontsize',ssize,'FontName',fontnamed);
% axis([0 10 0 7]);%XY轴的范围
% xticks([1 2 3 4 5 6 7 8 9 10]);%画格网的时候的小刻度
% xticklabels({'1','2','3','4','5','6','7','8','9','10'});%加x轴刻度标注
% yticks([1 2 3 4 5 6]);%画格网的时候的小刻度
% yticklabels({'1','2','3','4','5','6'});%加y轴刻度标注
set(gca,'linewidth',1,'fontsize',ssize,'FontName',fontnamed);
% set(gca,'yticklabel',[]);%y轴不显示
% set(gca,'xticklabel',[]);%x轴不显示
grid on;box on;hold on;

%% 画legend
% hLegend1=legend('A1', 'A2', 'A3','Location', 'northeast','Box', 'off','Orientation','horizontal','fontsize',ssize,'FontName',fontnamed);
%方法一
% kk=legend('h1');
% set(kk,'location','NorthEast','Box', 'off','fontsize',ssize,'FontName',fontnamed);%'orientation','horizontal',
%方法二
% columnlegend(2,{'L1','L2','L3','L4','L5','L6'},'North');%表示一行放三个图例以及图例的位置

%% Matlab中有许多位置可以选择:
% 'North' inside plot box near top
% 'South' inside bottom
% 'East' inside right
% 'West' inside left
% 'NorthEast' inside top right (default for 2-D plots)
% 'NorthWest' inside top left
% 'SouthEast' inside bottom right
% 'SouthWest' inside bottom left
% 'NorthOutside' outside plot box near top
% 'SouthOutside' outside bottom
% 'EastOutside' outside right
% 'WestOutside' outside left
% 'NorthEastOutside' outside top right (default for 3-D plots)
% 'NorthWestOutside' outside top left
% 'SouthEastOutside' outside bottom right
% 'SouthWestOutside' outside bottom left
% 'Best' least conflict with data in plot 与绘图中的数据冲突最小
% 'BestOutside' least unused space outside plot

%% 背景颜色
set(gcf,'Color',[1 1 1]);
%% 设置完毕后,按照所需分辨率、格式输出
figW = figureWidth;
figH = figureHeight;
set(figureHandle,'PaperUnits',figureUnits);
set(figureHandle,'PaperPosition',[0 0 figW figH]);
fileout = 'demo1_scartter_double_bar';
print(figureHandle,[fileout,'.png'],'-r600','-dpng');


3 如何绘制满足 SCI 要求的单幅图

单幅图在我看来就是一行一列的子图,只是他的子图只有一个而已。持续关注后期会更新符合 SCI 要求的一行两列的子图、一行三列的子图、两行两列的子图、两行三列的子图、两行一列的子图、三行一列的子图、六行一列的子图,这是我目前 SCI 绘制过程中常遇到的图形绘制格式。

这里有必要解释一下为什么 figureWidth 要设置为 8.5,这是因为双栏排版的情况下,用于插入图的空间有限。

那么是如何计算的呢,A4 纸规格尺寸:210mm×297mm。A4 纸是由国际标准化组织 ISO 216 定义的,规格为 210mm×297mm,世界上多数国家所使用的纸张尺寸都是采用这一国际标准。

论文页边距的要求为:上 (T):25 mm;下 (B):25 mm;左 (L):20 mm;右 (R):20 mm。

也就是说论文须用 A4(210mm×297mm)标准大小白纸印制,要求纸的四周留足空白边缘,以便装订、复制和批注。每一面的上方(天头)和下方(地脚)应分别留边 25mm,左侧(订口)和右侧(切口)应分别留边 20mm。这是相对于一般的投稿期刊来说的。

那么 210mm- 20mm- 20mm=170mm,则双栏排版的话,留给单栏用于放置图片的空间仅剩 85mm,也即 8.5cm。只有这样出的图,在导入 Word 中的时候,字号大小会保持不变。而若是出图 10cm,导入 Word 后被压缩到 8.5cm,则图中 10 号字体也相应被压缩,已经不是原先的 10 号字体了,这也解释了为什么某些 SCI 中,每幅图的图中字体大小不一。

4 产品代码获取

https://mbd.pub/o/bread/ZJqbmZpp


1、感谢关注 Lwcah 的个人公众号,有关资源获取,请公众号后台发送推文末的关键词,自助获取。

2、若要添加个人微信号,请后台发送关键词:微信号。

3、若要进微信群:Lwcah 科研技巧群 3。请添加个人微信号后进群(大家沉浸式科研,广告勿扰),不定时更新科研技巧类推文。可以一起探讨科研,写作,文献,代码等诸多学术问题,我们一起进步。


记得关注公众号,并设为星标哦~谢谢啦~


目录
相关文章
|
7月前
|
算法 jenkins 持续交付
【MATLAB 】 EEMD-ARIMA联合时序预测算法,科研创新优选算法
【MATLAB 】 EEMD-ARIMA联合时序预测算法,科研创新优选算法
134 0
|
7月前
|
算法 jenkins 持续交付
【MATLAB 】 VMD-ARIMA联合时序预测算法,科研创新优选算法
【MATLAB 】 VMD-ARIMA联合时序预测算法,科研创新优选算法
127 0
|
4月前
matlab绘图之plot使用
matlab绘图之plot使用
29 0
|
6月前
|
数据处理
MATLAB 论文绘图规范标注
MATLAB 论文绘图规范标注
|
7月前
|
数据安全/隐私保护
地震波功率谱密度函数、功率谱密度曲线,反应谱转功率谱,matlab代码
地震波格式转换、时程转换、峰值调整、规范反应谱、计算反应谱、计算持时、生成人工波、时频域转换、数据滤波、基线校正、Arias截波、傅里叶变换、耐震时程曲线、脉冲波合成与提取、三联反应谱、地震动参数、延性反应谱、地震波缩尺、功率谱密度
|
7月前
|
索引
matlab快速入门(读取数据并绘制散点图和拉格朗日插值
matlab快速入门(读取数据并绘制散点图和拉格朗日插值
60 0
|
7月前
|
算法 jenkins 持续交付
【MATLAB 】 CEEMDAN-ARIMA联合时序预测算法,科研创新优选算法
【MATLAB 】 CEEMDAN-ARIMA联合时序预测算法,科研创新优选算法
91 0
|
7月前
|
编解码 算法 jenkins
【MATLAB 】 小波分解-ARIMA联合时序预测算法,科研创新优选算法
【MATLAB 】 小波分解-ARIMA联合时序预测算法,科研创新优选算法
160 0
|
4月前
|
安全
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
本文介绍了2023年高教社杯数学建模竞赛D题的圈养湖羊空间利用率问题,包括问题分析、数学模型建立和MATLAB代码实现,旨在优化养殖场的生产计划和空间利用效率。
205 6
【2023高教社杯】D题 圈养湖羊的空间利用率 问题分析、数学模型及MATLAB代码
|
4月前
|
存储 算法 搜索推荐
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现
本文提供了2022年华为杯数学建模竞赛B题的详细方案和MATLAB代码实现,包括方形件组批优化问题和排样优化问题,以及相关数学模型的建立和求解方法。
131 3
【2022年华为杯数学建模】B题 方形件组批优化问题 方案及MATLAB代码实现

热门文章

最新文章