用matlab画地形图,包括三维地形图以及平面热度图的方法

本文介绍如何使用MATLAB绘制三维地形图和平面热度图,以2011年数学建模国赛A题数据(cumcm2011)为例,提供详细代码参考。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

用matlab画地形图,包括三维地形图以及平面热度图的方法。

数据(cumcm2011)来源数学建模国赛2011年A题

参考代码如下:

temp1=xlsread('cumcm2011','附件1');
x=temp1(:,2);y=temp1(:,3);%数据格式均为列向量
alti=temp1(:,4);area=temp1(:,5);
uij=min(x(:,:)):(max(x(:,:))-min(x(:,:)))/100:max(x(:,:)); 
vij=min(y(:,:)):(max(y(:,:))-min(y(:,:)))/100:max(y(:,:));
[xi,yj]=meshgrid(uij,vij);
z2=griddata(x,y,alti,xi,yj,'cubic');
h=pcolor(xi,yj,z2);%热度图
set(h,'edgecolor','none','facecolor','interp');%去掉网格,平滑热度图
%surf(xi,yj,z2);%曲面图
colorbar;%显示图例
hold on;
for i=1:length(area(:,1))
	if(area(i)==1)
	h1=plot3(x(i),y(i),alti(i),'wo');
	elseif(area(i)==2)
	h2=plot3(x(i),y(i),alti(i),'yo');
	elseif(area(i)==3)
	h3=plot3(x(i),y(i),alti(i),'go');
	elseif(area(i)==4)
	h4=plot3(x(i),y(i),alti(i),'mo');
	elseif(area(i)==5)
	h5=plot3(x(i),y(i),alti(i),'bo');
	end
end
hold off;
title('区域地形图');
legend([h1,h2,h3,h4,h5],'功能区1','功能区2','功能区3','功能区4','功能区5',2);

temp2=xlsread('cumcm2011','附件2');
metal=temp2(:,2:end);
figure(1);
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值