欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 新闻 > 国际 > 【数学建模国奖速成系列】优秀论文绘图复现代码(四)

【数学建模国奖速成系列】优秀论文绘图复现代码(四)

2025/5/2 0:23:14 来源:https://blog.csdn.net/Magnolia_He/article/details/147629944  浏览:    关键词:【数学建模国奖速成系列】优秀论文绘图复现代码(四)

文章目录

  • 引言
  • 三维图
  • 双轴图
  • 三维散点图
  • 完整复现代码

引言

数模比赛的绘图是非常重要得,这篇文章给大家分享我自己复现国奖优秀论文的代码,基于Matalab来实现,可以直接运行出图。之前的文章也有分享【折线图、柱状图、箱线图、热图】的绘制,这篇文章主要分享【三维图、地图】。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

【数学建模美赛速成系列】O奖论文绘图复现代码

【数学建模国奖速成系列】优秀论文绘图复现代码(二)

【数学建模国奖速成系列】优秀论文绘图复现代码(三)

三维图

在这里插入图片描述

%%  三维图
clc;clear;close all;
load('color_cell1.mat')
color_all=color_cell1{1,3};
load('三维曲面图测试数据.mat')num=100;   %插值数据
test_data_x=a(:,1);
test_data_y=a(:,2);
test_data_z=a(:,3);
test_data_C=a(:,4);test_data_x1=linspace(min(test_data_x),max(test_data_x),num);
test_data_y1=linspace(min(test_data_y),max(test_data_y),num);[test_data_x1,test_data_y1]=meshgrid(test_data_x1,test_data_y1);
% 插值
test_data_z1=griddata(test_data_x,test_data_y,test_data_z,test_data_x1,test_data_y1,'v4');
test_data_C1=griddata(test_data_x,test_data_y,test_data_C,test_data_x1,test_data_y1,'v4');
mesh(test_data_x1,test_data_y1,test_data_z1,test_data_C1)
%surf  填充,推荐当数据少的时候
hold on
xlabel('x')
ylabel('y')
zlabel('z')
color_all=color_cell1{1,1};
colormap(color_all)%%
clc;clear;close all;
load('color_cell1.mat')
color_all=color_cell1{1,3};
load('三维曲面图测试数据.mat')num=30;   %插值数据
test_data_x=a(:,1);
test_data_y=a(:,2);
test_data_z=a(:,3);
test_data_C=a(:,4);test_data_x1=linspace(min(test_data_x),max(test_data_x),num);
test_data_y1=linspace(min(test_data_y),max(test_data_y),num);[test_data_x1,test_data_y1]=meshgrid(test_data_x1,test_data_y1);
% 插值
test_data_z1=griddata(test_data_x,test_data_y,test_data_z,test_data_x1,test_data_y1,'v4');
test_data_C1=griddata(test_data_x,test_data_y,test_data_C,test_data_x1,test_data_y1,'v4');
% surf(test_data_z1)
sc=surfc(test_data_x1,test_data_y1,test_data_z1,'FaceAlpha',0.9,'EdgeColor','none');
sc(2).FaceColor='auto';
sc(2).EdgeColor='none';
sc(2).ZLocation=min(min(test_data_z1))-0.3*abs(max(max(test_data_z1))-min(min(test_data_z1)));
sc(2).FaceAlpha=0.8;
hold on
xlabel('x')
ylabel('y')
zlabel('z')
color_all=color_cell1{1,1};
colormap(color_all)
colorbar
%%
clc;clear;close all;
load('color_cell1.mat')
color_all=color_cell1{1,3};
load('三维曲面图测试数据.mat')num=100;   %插值数据
test_data_x=a(:,1);
test_data_y=a(:,2);
test_data_z=a(:,3);
test_data_C=a(:,4);test_data_x1=linspace(min(test_data_x),max(test_data_x),num);
test_data_y1=linspace(min(test_data_y),max(test_data_y),num);[test_data_x1,test_data_y1]=meshgrid(test_data_x1,test_data_y1);
% 插值
test_data_z1=griddata(test_data_x,test_data_y,test_data_z,test_data_x1,test_data_y1,'v4');
test_data_C1=griddata(test_data_x,test_data_y,test_data_C,test_data_x1,test_data_y1,'v4');
surfc(test_data_x1,test_data_y1,test_data_z1,test_data_C1,'EdgeColor','none')ax=gca;
light
material dull
ax.Projection='perspective';
%surf  填充,推荐当数据少的时候
hold on
% imagesc(test_data_z1)
% hold on
xlabel('x')
ylabel('y')
zlabel('z')
color_all=color_cell1{1,2};
colormap(color_all)
% surf(Z)
% hold on
% imagesc(Z)
%%
clc;clear;close all
a=peaks;
figure
map=mycolormappm(a);
colormap(map)
sc=surfc(a,'FaceAlpha',0.5,'EdgeColor','none');
zlim([-3 11])
sc(2).FaceColor='auto';
sc(2).EdgeColor='none';
sc(2).ZLocation='zmax';
sc(2).FaceAlpha=0.9;
%print('hhh','-dpng','-r400')

双轴图

在这里插入图片描述

%% 双轴图
clc;clear;close all
load('color_list.mat')
load('折线图测试数据.mat')
%
color_index=[1,3,4,7,8,9];  %颜色选取
fu={'-*','-^','-o','-d','-p'};   %符号
color_set=color_list(color_index,:);figure('Position', [300 100 800 400]);
yyaxis left;
set(gca,'ycolor',color_set(1,:));
plot(data_test4(1,:),fu{1,5},'LineWidth',2,'Color',color_set(1,:))yyaxis right;
set(gca,'ycolor',color_set(2,:));plot(data_test4(2,:),fu{1,4},'LineWidth',2,'Color',color_set(2,:))
set(gca,"FontSize",11,"LineWidth",1.2)xlabel('times')
ylabel('values')
title('title')
box off
legend('object1','object2')
legend Box off
set(gca,"FontName","Times New Roman","FontSize",13,"LineWidth",1.2)

三维散点图

在这里插入图片描述

%% 三维散点图
size_num=60;
X = 1:size_num;
Y = randperm(size_num);
Z = randperm(size_num);
ZF = randperm(size_num)*30;
% 导入所有颜色矩阵
load('color_cell1.mat')
mycolor1=color_cell1{1,1}(1:6:360,:);
% 开始绘制散点图
figure('color',[1 1 1],'Position',[200,100,600,500]);
for i=1:4ax1 = subplot(2,2,i);X = 1:size_num;Y = randperm(size_num);Z = randperm(size_num);ZF = randperm(size_num)*30;scatter3(X,Y,Z,ZF,mycolor1,'.');colormap(ax1,mycolor1);set(gca,'Linewidth',0.9);xlabel('X');ylabel('Y');zlabel('Z');title('三维散点');hold on
end

完整复现代码

在这里插入图片描述
在这里插入图片描述

另外国奖复现代码还包括:

  • 折线图
  • 多根折线图
  • 带误差棒的折线图
  • 单个误差带的折线图
  • 多个带误差带的折线图
  • 箱线图
  • 热图
  • 矩阵散点图
  • 三维图
  • 双轴图

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词