【MATLAB】全网入门快、免费获取、持续更新的科研绘图教程系列2

news2024/11/16 4:21:07

14 【MATLAB】科研绘图第十四期表示散点分布的双柱状双Y轴统计图

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

%% Made by Lwcah (公众号: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(343);%香水玫瑰
C2 = chinesecolors(150);%靛青
C3 = chinesecolors(523);%玫瑰灰
% C4 = chinesecolors(17);%鹅冠红

%% 数据
x = 1:30;
y = x+rand(1,30)*0.01;

%% 表示散点分布的双柱状统计图绘图
[n1,ctr1] = hist(x,20);
[n2,ctr2] = hist(y,20);

subplot(2,2,2);

yyaxis right
bar(ctr1,-n1,1);h1 = gca;hold on;box on;grid on;
ylabel('Numbers','fontsize',ssize,'FontName',fontnamed);
alpha(0.1);%调整柱状图颜色的透明度

yyaxis left
plot(x,y,'.');axis on; h2 = gca; hold on;box on;grid on;
xlabel('X-axis','fontsize',ssize,'FontName',fontnamed);
ylabel('Y-axis','fontsize',ssize,'FontName',fontnamed);

subplot(2,2,1);
barh(ctr2,-n2,1);axis off; h3 = gca;

h1.Position = [0.35 0.35 0.50 0.55];
% h2.Position = [0.05 0.35 0.25 0.55];
h3.Position = [0.08 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 = 'demo_scartter_double_bar_plus';
print(figureHandle,[fileout,'.png'],'-r600','-dpng');

15 【MATLAB】科研绘图第十五期多Y轴图

%% 多Y轴图

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

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

%% 1行1列-定义整幅图出现的在电脑屏幕上的位置以及长和宽
figureHandle = figure;
figureUnits = 'centimeters';
figureWidth = 15;
figureHeight = 8;
set(gcf, 'Units', figureUnits, 'Position', [0 0 figureWidth figureHeight]);

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

%% 给定绘图颜色
C1 = chinesecolors(343); % 香水玫瑰
C2 = chinesecolors(150); % 靛青
C3 = chinesecolors(523); % 玫瑰灰
C4 = chinesecolors(232); % 粉绿

%%
% handle = maxis(number of axis, y-spacing between outside lines)
h = myaxisc(4,0.10); % 第一个参数4是设置轴的数量,第二个参数0.10是设置轴间距
% Create some random data for plotting
t1  = 0:0.1:5;
t2  = 0:1:5;
y11 = sin(t1);
y21 = t1.^2-5;
y22 = 15-t2.*2;
y31 = sqrt(t1).*2+97;
y41 = rand(size(t1))-2;
y42 = rand(size(t1))+4;

p(1) = plot(h.p(1),t1,y11,'Color',C1);hold on;
p(2) = plot(h.p(2),t1,y21,'Color',C2,'LineStyle','--','Marker','o');hold on;
p(3) = plot(h.p(2),t2,y22,'Color',C2,'LineStyle','--','Marker','s');hold on;
p(4) = plot(h.p(3),t1,y31,'Color',C3);hold on;
p(5) = plot(h.p(4),t1,y41,'Color',C4,'LineStyle','--','Marker','o');hold on;
p(6) = plot(h.p(4),t1,y42,'Color',C4,'LineStyle','--','Marker','s');hold on;
% p(7) = bar(h.p(4),t1,y42,0.20,'FaceColor',C4);hold on; % 如果要画柱状图的话

h.xlim([0,5]);                       % Set X-Axis Limits
h.autoscale;                         % Automatically Scale Y Axis
h.autoy(3);                          % Autoscale only specified y-axis
% h.ylim(3,[95,105]);                % Set Y-Limits for axis 3
% h.ylim(4,[-3,8]);                  % Set Y-Limits for axis 4
h.gridon;                            % Enable grid (use h.gridoff to remove)         
h.ycolor(1,C1);                      % Modify the y-Axis Color
h.ycolor(2,C2);                      % Modify the y-Axis Color
h.ycolor(3,C3);                      % Modify the y-Axis Color
h.ycolor(4,C4);                      % Modify the y-Axis Color
h.ylabel(1,'First Y-Axis (Y1)');     % Add y-Labels
h.ylabel(2,'Second Y-Axis (Y2)');    % Add y-Labels
h.ylabel(3,'Third Y-Axis (Y3)');     % Add y-Labels
h.ylabel(4,'Another Y-Axis(Y4)');    % Add y-Labels
h.xlabel('X-Axis');                  % Add x-Label
h.fontsize(10);                      % Change all font sizes
h.position([0.1,0.15,0.8,0.75],0.12); % Position-Vector and Spacing 0.12

%% 增添图例
kk=legend(h.legendtarget,p,'Line 1','Line 2','Line 3','Line 4','Line 5','Line 6');
set(kk,'location','NorthOutside','Box', 'off','Orientation','horizontal','fontsize',10,'FontName',fontnamed);
% 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 = 'myaxisc_example';
print(figureHandle,[fileout,'.png'],'-r800','-dpng');

16 【MATLAB】科研绘图第十六期三Y轴图

%% 三Y轴图
%% 根据自己绘图需求需要修改的有46,49,50,51,53,75和77

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

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

%% 1行1列-定义整幅图出现的在电脑屏幕上的位置以及长和宽
figureHandle   = figure;
figureUnits    = 'centimeters';
figureWidth    = 15;
figureHeight   = 8;
set(gcf, 'Units', figureUnits, 'Position', [0 0 figureWidth figureHeight]);

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

%% 给定绘图颜色
C1 = chinesecolors(343);     % 香水玫瑰
C2 = chinesecolors(150);     % 靛青
C3 = chinesecolors(523);     % 玫瑰灰
C4 = chinesecolors(232);     % 粉绿

%% 加载数据
load res_CRMN
x  = 1:1:18;
x  = x';
y1 = res_CRMN(:,3);          % 误差
y2 = res_CRMN(:,2);          % 均方根误差
y3 = res_CRMN(:,1);          % 相关系数

%% 绘图
[ax1,hlines1] = plotyn(x,y1,x,y2,x,y3); % 画三Y轴图(主函数29行和子函数第56列要更改,修图功能)

%% 增添图例
% kk=legend(h.legendtarget,p,'Line 1','Line 2','Line 3','Line 4','Line 5','Line 6');
% set(kk,'location','NorthOutside','Box', 'off','Orientation','horizontal','fontsize',10,'FontName',fontnamed);
% 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 = 'demo_yaxis3';
print(figureHandle,[fileout,'.png'],'-r800','-dpng');

17 【MATLAB】科研绘图第十七期双Y轴图

%% 三Y轴图
%% 根据自己绘图需求需要修改的有46,49,50,51,53,75和77

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

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

%% 1行1列-定义整幅图出现的在电脑屏幕上的位置以及长和宽
figureHandle   = figure;
figureUnits    = 'centimeters';
figureWidth    = 15;
figureHeight   = 7;
set(gcf, 'Units', figureUnits, 'Position', [0 0 figureWidth figureHeight]);

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

%% 给定绘图颜色
C1 = chinesecolors(150);     % 靛青
C2 = chinesecolors(523);     % 玫瑰灰
C3 = chinesecolors(343);     % 香水玫瑰
C4 = chinesecolors(232);     % 粉绿

%% 加载数据
load res_CRMN
x  = 1:1:18;
x  = x';
y1 = res_CRMN(:,3);          % 误差
y2 = res_CRMN(:,2);          % 均方根误差

%% 绘图
yyaxis left
h1 = line (x,y1,'LineStyle','--','Marker','o','LineWidth',1,'Color',C1, 'MarkerEdgeColor',C1,'MarkerFaceColor',C1);hold on;
ylabel('Y1-axis','fontsize',ssize,'FontName',fontnamed,'Color',C1);
axis([0 19 -0.2 0]);%XY轴的范围
xticks([1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18]);%画格网的时候的小刻度
xticklabels({'1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18'});%加x轴刻度标注
yticks([-0.20 -0.15 -0.10 -0.05 0]);%画格网的时候的小刻度
yticklabels({'-0.20','-0.15','-0.10','-0.05','0'});%加y轴刻度标注
set(gca,'linewidth',1,'fontsize',ssize,'FontName',fontnamed);
set(gca,'ycolor',C1);

yyaxis right
h2 = line (x,y2,'LineStyle','--','Marker','o','LineWidth',1,'Color',C2, 'MarkerEdgeColor',C2,'MarkerFaceColor',C2);hold on;
hold on;box on;grid on;axis on; 
ylabel('Y2-axis','fontsize',ssize,'FontName',fontnamed,'Color',C2);
axis([0 19 0.2 0.6]);%XY轴的范围
% xticks([1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18]);%画格网的时候的小刻度
% xticklabels({'1','2','3','4','5','6','7','8','9','10','11','12','13','14','15','16','17','18'});%加x轴刻度标注
yticks([0.2 0.3 0.4 0.5 0.6]);%画格网的时候的小刻度
yticklabels({'0.2','0.3','0.4','0.5','0.6'});%加y轴刻度标注
set(gca,'linewidth',1,'fontsize',ssize,'FontName',fontnamed);
set(gca,'ycolor',C2);

xlabel('X-axis','fontsize',ssize,'FontName',fontnamed);

%% 增添图例
kk=legend([h1,h2],'L1','L2');
set(kk,'location','North','Box', 'off','fontsize',ssize,'orientation','horizontal','FontName',fontnamed);%

% 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 = 'demo_yaxis2';
print(figureHandle,[fileout,'.png'],'-r800','-dpng');

18 【MATLAB】科研绘图第十八期散点密度图

%% 散点密度图

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

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

%% 1行1列-定义整幅图出现的在电脑屏幕上的位置以及长和宽
figureHandle   = figure;
figureUnits    = 'centimeters';
figureWidth    = 15;
figureHeight   = 16;
set(gcf, 'Units', figureUnits, 'Position', [2 2 figureWidth figureHeight]);
%定义子图在图中的x,y以及长和宽
pos54                   = zeros(20,4);
pos54(:,3)              = 0.23;                   % 长x
pos54(:,4)              = 0.19;                   % 宽y
pos54([17 18 19 20],2)  = 0.05;                   % y
pos54([13 14 15 16],2)  = 0.24;                   % y
pos54([9 10 11 12],2)   = 0.43;                   % y
pos54([5 6 7 8],2)      = 0.62;                   % y
pos54([1 2 3 4],2)      = 0.81;                   % y
pos54([1 5 9 13 17],1)  = 0.07;                   % x
pos54([2 6 10 14 18],1) = 0.30;                   % x
pos54([3 7 11 15 19],1) = 0.53;                   % x
pos54([4 8 12 16 20],1) = 0.76;                   % x

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

%% 给定绘图颜色
C1 = chinesecolors(150);     % 靛青
C2 = chinesecolors(523);     % 玫瑰灰
C3 = chinesecolors(343);     % 香水玫瑰
C4 = chinesecolors(232);     % 粉绿

%% 加载数据
load x
load y
res_CRMN                                           = [];                    % 用于存储反演的精度结果

%% 绘图
subplot('position',pos54(1,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
ylabel('Y-axis','fontsize',ssize,'FontName',fontnamed);
text(0,4.5,'(a)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(2,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
text(0,4.5,'(b)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(3,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
text(0,4.5,'(c)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(4,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
text(0,4.5,'(d)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(5,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
ylabel('Y-axis','fontsize',ssize,'FontName',fontnamed);
text(0,4.5,'(e)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(6,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
text(0,4.5,'(f)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(7,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
text(0,4.5,'(g)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(8,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
text(0,4.5,'(h)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(9,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
ylabel('Y-axis','fontsize',ssize,'FontName',fontnamed);
text(0,4.5,'(i)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(10,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
text(0,4.5,'(j)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(11,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
text(0,4.5,'(k)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(12,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
text(0,4.5,'(l)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(13,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
ylabel('Y-axis','fontsize',ssize,'FontName',fontnamed);
text(0,4.5,'(m)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(14,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
text(0,4.5,'(n)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(15,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
text(0,4.5,'(o)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(16,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
text(0,4.5,'(p)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(17,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
ylabel('Y-axis','fontsize',ssize,'FontName',fontnamed);
xlabel('X-axis','fontsize',ssize,'FontName',fontnamed);
text(0,4.5,'(q)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(18,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
xlabel('X-axis','fontsize',ssize,'FontName',fontnamed);
text(0,4.5,'(r)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(19,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
xlabel('X-axis','fontsize',ssize,'FontName',fontnamed);
text(0,4.5,'(s)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(20,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc(res_CRMN,x,y,C1,C2);
xlabel('X-axis','fontsize',ssize,'FontName',fontnamed);
text(0,4.5,'(t)','fontsize',ssize,'FontName',fontnamed);

%% 增添图例
% kk=legend([h1,h2],'L1','L2');
% set(kk,'location','North','Box', 'off','fontsize',ssize,'orientation','horizontal','FontName',fontnamed);%

% 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 = 'demo4_scatter_density5x4';
print(figureHandle,[fileout,'.png'],'-r800','-dpng');

19 【MATLAB】科研绘图第十九期散点密度图强化版

%% 散点密度图

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

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

%% 1行1列-定义整幅图出现的在电脑屏幕上的位置以及长和宽
figureHandle   = figure;
figureUnits    = 'centimeters';
figureWidth    = 15;
figureHeight   = 16;
set(gcf, 'Units', figureUnits, 'Position', [2 2 figureWidth figureHeight]);
%定义子图在图中的x,y以及长和宽
pos54                   = zeros(20,4);
pos54(:,3)              = 0.23;                   % 长x
pos54(:,4)              = 0.19;                   % 宽y
pos54([17 18 19 20],2)  = 0.05;                   % y
pos54([13 14 15 16],2)  = 0.24;                   % y
pos54([9 10 11 12],2)   = 0.43;                   % y
pos54([5 6 7 8],2)      = 0.62;                   % y
pos54([1 2 3 4],2)      = 0.81;                   % y
pos54([1 5 9 13 17],1)  = 0.07;                   % x
pos54([2 6 10 14 18],1) = 0.30;                   % x
pos54([3 7 11 15 19],1) = 0.53;                   % x
pos54([4 8 12 16 20],1) = 0.76;                   % x

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

%% 给定绘图颜色
C1 = chinesecolors(150);     % 靛青
C2 = chinesecolors(523);     % 玫瑰灰
C3 = chinesecolors(343);     % 香水玫瑰
C4 = chinesecolors(232);     % 粉绿

%% 加载数据
load x
load y
res_CRMN                                           = [];                    % 用于存储反演的精度结果

%% 绘图
subplot('position',pos54(1,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
ylabel('Y-axis','fontsize',ssize,'FontName',fontnamed);
text(0,4.5,'(a)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(2,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
text(0,4.5,'(b)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(3,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
text(0,4.5,'(c)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(4,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
text(0,4.5,'(d)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(5,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
ylabel('Y-axis','fontsize',ssize,'FontName',fontnamed);
text(0,4.5,'(e)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(6,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
text(0,4.5,'(f)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(7,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
text(0,4.5,'(g)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(8,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
text(0,4.5,'(h)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(9,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
ylabel('Y-axis','fontsize',ssize,'FontName',fontnamed);
text(0,4.5,'(i)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(10,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
text(0,4.5,'(j)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(11,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
text(0,4.5,'(k)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(12,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
text(0,4.5,'(l)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(13,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
ylabel('Y-axis','fontsize',ssize,'FontName',fontnamed);
text(0,4.5,'(m)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(14,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
text(0,4.5,'(n)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(15,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
text(0,4.5,'(o)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(16,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
text(0,4.5,'(p)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(17,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
ylabel('Y-axis','fontsize',ssize,'FontName',fontnamed);
xlabel('X-axis','fontsize',ssize,'FontName',fontnamed);
text(0,4.5,'(q)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(18,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
xlabel('X-axis','fontsize',ssize,'FontName',fontnamed);
text(0,4.5,'(r)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(19,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
xlabel('X-axis','fontsize',ssize,'FontName',fontnamed);
text(0,4.5,'(s)','fontsize',ssize,'FontName',fontnamed);

subplot('position',pos54(20,:));
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N] = plotcc_contourf(res_CRMN,x,y,C1,C2);
xlabel('X-axis','fontsize',ssize,'FontName',fontnamed);
text(0,4.5,'(t)','fontsize',ssize,'FontName',fontnamed);

%% 增添图例
% kk=legend([h1,h2],'L1','L2');
% set(kk,'location','North','Box', 'off','fontsize',ssize,'orientation','horizontal','FontName',fontnamed);%

% 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 = 'demo4_scatter_density5x4';
print(figureHandle,[fileout,'.png'],'-r800','-dpng');

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

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

%% Made by Lwcah(公众号: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');

21 【MATLAB】科研绘图第二十一期散点密度双柱状图强化版

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

%% Made by Lwcah (公众号: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(135); % 海涛蓝

%% 数据
load x
load y

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

subplot(2,2,2);
%% 绘图
res_CRMN                                           = [];
[res_CRMN,str_equation,str_C,str_RMSE,str_M,str_N]=plotcc_contourf(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');

22 【MATLAB】科研绘图第二十二期三维瀑布图

%% Made by Lwcah(公众号: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 = 15;
figureHeight = 9;
set(gcf, 'Units', figureUnits, 'Position', [28 10 figureWidth figureHeight]);
% 注:28代表出图时图的左下角相对于整个电脑屏幕的左下角向左偏移28个单位,向上偏移20个单位。
% 可自行调节两个数字让图出在自己屏幕的某个位置

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

%% 一、信号分解并出图
% 加载数据
load data              
x=data(:,1);
y=data(:,2);
% 展开信号分解
[imf,residual]=emd(y);
residual      = residual.*ones(size(y))';
modes         = [imf;residual];

%% 构造XYZ数据集
% X轴应该为Imf代表的分量数
[m,n] = size(modes);% m为几个IMF分量;n为分量的数据长度。
X1    = (1:1:m)';
X2    = ones(size(modes));
X     = X1.*X2;
X     = X';
% Y轴应该为Imf代表的分量数据长度
Y1    = (1:1:n);
Y2    = ones(size(modes));
Y     = Y1.*Y2;
Y     = Y';
% Z轴呈现的为信号分解的数据(为了使画图更好看所以要调整顺序)
Z     = modes;
Z     = [modes(8,:);modes(7,:);modes(6,:);modes(5,:);modes(4,:);modes(3,:);modes(2,:);modes(1,:)];

%% 绘图
plot3(X,Y,Z,'linewidth',1);
hTitle = title('Three-dimensional waterfall map');
hXLabel = xlabel('X');
hYLabel = ylabel('Y');
hZLabel = zlabel('Z');

%% 画图的标准格式代码
% text(0.5,0.9,'(a) XXX','fontsize',ssize,'FontName',fontnamed);%,'horiz','center'
xlabel('X-axis','fontsize',ssize,'FontName',fontnamed);
ylabel('Y-axis','fontsize',ssize,'FontName',fontnamed);
zlabel('Z-axis','fontsize',ssize,'FontName',fontnamed);
% axis([0 7 0 0.7 50 250]);%XYZ轴的范围
% xticks([1 2 3 4 5 6]);%画格网的时候的小刻度
% xticklabels({'1','2','3','4','5','6'});%加x轴刻度标注
% yticks([0.1 0.2 0.3 0.4 0.5 0.6]);%画格网的时候的小刻度
% yticklabels({'0.1','0.2','0.3','0.4','0.5','0.6'});%加y轴刻度标注
% zticks([50 100 150 200 250]);%画格网的时候的小刻度
% zticklabels({'50','100','150','200','250'});%加z轴刻度标注
set(gca,'linewidth',1,'fontsize',ssize,'FontName',fontnamed);
% set(gca,'zticklabel',[]);%z轴不显示
% set(gca,'yticklabel',[]);%y轴不显示
% set(gca,'xticklabel',[]);%x轴不显示
grid on;box on;hold on;

%% 画legend
%方法一
kk=legend('L8','L7','L6','L5','L4','L3','L2','L1');
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 = '三维瀑布图';
print(figureHandle,[fileout,'.png'],'-r600','-dpng');





%% 一幅图的时候figureWidth = 8.5;figureHeight = 8;调整这两个参数就可以
%定义整幅图出现的在电脑屏幕上的位置以及长和宽
%这里有必要解释一下为什么figureWidth要设置为8.5;
%因详细解释需要很长的篇幅,请转公众号观看2023-03-21的文章观看。
figureHandle = figure;
figureUnits  = 'centimeters';
figureWidth  = 8.5;
figureHeight = 14;
set(gcf, 'Units', figureUnits, 'Position', [20 12 figureWidth figureHeight]);
%% 展开信号分解
[imf,residual]=emd(y);
residual      = residual.*ones(size(y))';
modes         = [imf;residual];
%信号重构
d1           = modes(1,:);
d2           = modes(2,:);
d3           = modes(3,:);
d4           = modes(4,:);
d5           = modes(5,:);
d6           = modes(6,:);
d7           = modes(7,:);
d8           = modes(8,:);
% d9           = modes(9,:);
% d10          = modes(10,:);
%% 画图
subplot(9,1,1)
plot(x,y);
ylabel('原信号');hold on;
subplot(9,1,2)
plot(x,d1);
ylabel('d1');hold on;
subplot(9,1,3)
plot(x,d2);
ylabel('d2');hold on;
subplot(9,1,4)
plot(x,d3);
ylabel('d3');hold on;
subplot(9,1,5)
plot(x,d4);
ylabel('d4');hold on;
subplot(9,1,6)
plot(x,d5);
ylabel('d5');hold on;
subplot(9,1,7)
plot(x,d6);
ylabel('d6');hold on;
subplot(9,1,8)
plot(x,d7);
ylabel('d7');hold on;
subplot(9,1,9)
plot(x,d8);
ylabel('d8');hold on;
% subplot(11,1,10)
% plot(x,d9);
% ylabel('d9');hold on;
% subplot(11,1,11)
% plot(x,d10);
% ylabel('d10');hold on;
xlabel('X-axis');
%% 背景颜色
set(gcf,'Color',[1 1 1])
%% 图片输出
figW    = figureWidth;
figH    = figureHeight;
set(figureHandle,'PaperUnits',figureUnits);
set(figureHandle,'PaperPosition',[0 0 figW figH]);
fileout = '原始数据分解各分量';
print(figureHandle,[fileout,'.png'],'-r600','-dpng');

23 【MATLAB】科研绘图第二十三期箭头图

%% 箭头图
%% Made by Lwcah (公众号: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(343);%香水玫瑰
C2 = chinesecolors(150);%靛青
C3 = chinesecolors(523);%玫瑰灰
% C4 = chinesecolors(17);%鹅冠红

%% 加载数据
% 以MATLAB自带的北美上空气流的采样数据为例
% 向量 X 和 Y 表示每个箭头的起始点位置(经纬度),U 和 V 表示每个箭头的定向分量。
load('wind','x','y','u','v')
X = x(11:22,11:22,1);
Y = y(11:22,11:22,1);
U = u(11:22,11:22,1);
V = v(11:22,11:22,1);
quiver(X,Y,U,V)
% axis equal

%% 修图的标准格式代码
% text(0.5,0.9,'(a) XXX','fontsize',ssize,'FontName',fontnamed);%,'horiz','center'
% title('1000');
xlabel('经度/°','fontsize',ssize,'FontName',fontnamed);
ylabel('纬度/°','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 = 'demo_quiver';
print(figureHandle,[fileout,'.png'],'-r600','-dpng');


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1248256.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据结构与算法之美学习笔记:25 | 红黑树(上):为什么工程中都用红黑树这种二叉树?

目录 前言什么是“平衡二叉查找树”?如何定义一棵“红黑树”?为什么说红黑树是“近似平衡”的?解答开篇 前言 本节课程思维导图: 二叉查找树是最常用的一种二叉树,它支持快速插入、删除、查找操作,各个操作…

GEE:基于 Landst 遥感数据计算的 kNDVI 下载 APP

作者:CSDN _养乐多_ 本文记录了在Google Earth Engine(GEE)平台中,使用 Landsat 遥感数据计算并且下载 kNDVI 的应用 APP 链接,并介绍该 APP 的使用方法和步骤。该APP可以为用户展示 NDVI 和 kNDVI 的遥感影像&#…

如何简化工厂设备报修、维修流程?有什么好用的设备管理软件?

一、场景需求   以往,张师傅在日常巡检工作中,他负责监控设备的运行情况。一旦发现设备出现异常,他需填写一份纸质工单,详细记录设备的名称、型号、异常现象以及发生时间等信息交给上级主管。上级主管收到反馈信息后&#xff0c…

笔记:内网渗透流程之信息收集

信息收集 首先,收集目标内网的信息,包括子网结构、域名信息、IP地址范围、开放的端口和服务等。这包括通过主动扫描和渗透测试工具收集信息,以及利用公开的信息源进行信息搜集。 本机信息收集 查看系统配置信息 查看系统详细信息&#xf…

最新AIGC创作系统ChatGPT网站源码,Midjourney绘画系统,支持GPT-4图片对话能力(上传图片并识图理解对话),支持DALL-E3文生图

一、AI创作系统 SparkAi创作系统是基于OpenAI很火的ChatGPT进行开发的Ai智能问答系统和Midjourney绘画系统,支持OpenAI-GPT全模型国内AI全模型。本期针对源码系统整体测试下来非常完美,可以说SparkAi是目前国内一款的ChatGPT对接OpenAI软件系统。那么如…

C++初阶 | [六] 模板初阶

摘要:泛型编程,函数模板,类模板 使用函数重载虽然可以实现,但是有一下几个不好的地方: 重载的函数仅仅是类型不同,代码复用率比较低,只要有新类型出现时,就需要用户自己增加对应的函…

JWT和Token之间的区别

✅作者简介:大家好,我是Leo,热爱Java后端开发者,一个想要与大家共同进步的男人😉😉 🍎个人主页:Leo的博客 💞当前专栏:每天一个知识点 ✨特色专栏&#xff1a…

python opencv -模板匹配

python opencv -模板匹配 模板匹配就是,我们现有一个模板和一个图片,然后,在这个图片中寻找和模板近似的部分。 在opencv 中主要通过cv2.matchTemplate这个函数去实现。 下面我们先看一下,模板图片和需要匹配的图片&#xff1a…

管理类联考——数学——汇总篇——知识点突破——应用题——路程——记忆

路程——【考频:高】——【解题提示:根据题意画图,找等量关系(一般是时间和路程),列方程求解。】 【 应用题 ⟹ \Longrightarrow ⟹ 路程 ⟹ \Longrightarrow ⟹ 直线 ⟹ \Longrightarrow ⟹ 匀速、相遇、…

安装compiler version 5

这个compiler version5 在我的资源里面可以免费下载; 另外这个东西还需要安装,安装教程在这里:Keil最新版保姆教程(解决缺少V5编译器问题) - 哔哩哔哩 (bilibili.com) 看吧安装好了year

游览器缓存讲解

浏览器缓存是指浏览器在本地存储已经请求过的资源的一种机制,以便在将来的请求中能够更快地获取这些资源,减少对服务器的请求,提高页面加载速度。浏览器缓存主要涉及到两个方面:缓存控制和缓存位置。 缓存控制 Expires 头&#…

【10套模拟】【10】

关键字: 线性探测次数、冒泡交换性质、排序次数最值、bst查找关键字最多比较次数、m叉树空指针域 链表合并、二叉排序树查找x、堆排序

DCDC电感发热啸叫原因分析

一、电感发热啸叫原因解析 发热原因&#xff1a;电感饱和&#xff0c;实际使用的电感值<理论电感计算值 原因1&#xff1a;电感选择过小&#xff0c;计算值不合理。 原因2&#xff1a;PCB布局不合理&#xff0c;屏蔽型电感下方应设禁止铺铜区。 啸叫原因&#xff1a; 人耳的…

【黑马甄选离线数仓day04_维度域开发】

1. 维度主题表数据导出 1.1 PostgreSQL介绍 PostgreSQL 是一个功能强大的开源对象关系数据库系统&#xff0c;它使用和扩展了 SQL 语言&#xff0c;并结合了许多安全存储和扩展最复杂数据工作负载的功能。 官方网址&#xff1a;PostgreSQL: The worlds most advanced open s…

网络互联与IP地址

目录 网络互联概述网络的定义与分类网络的定义网络的分类 OSI模型和DoD模型网络拓扑结构总线型拓扑结构星型拓扑结构环型拓扑结构 传输介质同轴电缆双绞线光纤 介质访问控制方式CSMA/CD令牌 网络设备网卡集线器交换机路由器总结 IP地址A、B、C类IP地址特殊地址形式 子网与子网掩…

基于java实现捕鱼达人游戏

开发工具eclipse,jdk1.8 文档截图&#xff1a; package com.qd.fish;import java.awt.Graphics; import java.awt.image.BufferedImage; import java.util.Random;public class Fish {//定义鱼的图片BufferedImage fishImage;//定义鱼的数组帧BufferedImage[] fishFrame;//…

网工内推 | 美的、得力集团,包吃包住,IE认证优先,14薪

01 美的 招聘岗位&#xff1a;网络工程师 职责描述&#xff1a; 1.负责IT网络设备、IDC机房的日常维护巡检、监控和管理&#xff1b; 2.负责路由、交换、防火墙、无线控制器、AP等网络设备的开通、调整、优化升级&#xff1b; 3.负责公司OT、IT网络规划&#xff0c;项目实施以…

每日一题(LeetCode)----链表--链表最大孪生和

每日一题(LeetCode)----链表–链表最大孪生和 1.题目&#xff08;2130. 链表最大孪生和&#xff09; 在一个大小为 n 且 n 为 偶数 的链表中&#xff0c;对于 0 < i < (n / 2) - 1 的 i &#xff0c;第 i 个节点&#xff08;下标从 0 开始&#xff09;的孪生节点为第 (n…

Log4j2.xml不生效:WARN StatusLogger Multiple logging implementations found:

背景 将 -Dlog4j.debug 添加到IDEA的类的启动配置中 运行上图代码&#xff0c;这里log4j2.xml控制的日志级别是info&#xff0c;很明显是没生效。 DEBUG StatusLogger org.slf4j.helpers.Log4jLoggerFactory is not on classpath. Good! DEBUG StatusLogger Using Shutdow…