matlab画二位温度场图(代码带注释)

matlab画二位温度场图(代码带注释)

实验设备

设备各个采集温度坐标点如下所示a
设备采集温度坐标位置关系

%给定一个矩形区域76x125
%%这个区域20个离散点就是第一个时间段的温度,采样的20个点
x=[0,0,19,38,0,-19,-38,0,19,38,0,-19,-38,0,19,38,0,-19,-38,0];%20个位置依次的横坐标
y=[110,100,100,100,85,85,85,70,70,70,50,50,50,30,30,30,10,10,10,0];%20个位置依次的纵坐标
data=load('T.txt');%%载入全部数据

%%%%%%%第1次测量的图
z=data(1,:);%%第一个时间段测量的温度,第几次改为几
%%%接下来进行``插值分为76X125份
X1=-38:1:38;
Y1=0:1:125;
[X,Y,Z]=griddata(x,y,z,X1',Y1,'v4');%%样条插值

%colorbar;
subplot(2,5,1)    %%第一个小图,2代表2行,5代表5列,一共2*5个图,后面1表示第几个图
contourf(X,Y,Z,'LineStyle','none');
%%不显示刻度值
%set(gca,'XColor','white');%%如果要显示,就把这几行删掉
%set(gca,'YColor','white');
%set(gca,'Color','white');
%axis off
%box on
xlabel('10h')%%%x轴的标注,你需要显示什么就在引号里改为几小时
%%%%%%第2次测量
z=data(2,:);%%第2个时间段测量的温度
%%%接下来进行插值分为76X125份
X1=-38:1:38;
Y1=0:1:125;
[X,Y,Z]=griddata(x,y,z,X1',Y1,'v4');%%样条插值
subplot(2,5,2)    %%第2个小图,2代表2行,5代表5列,一共2*5个图,后面1表示第几个图
contourf(X,Y,Z,'LineStyle','none');%%不显示刻度值
xlabel('16h')%%%x轴的标注,你需要显示什么就在引号里改为几小时


%%%%%%第3次测量
z=data(3,:);%%第3个时间段测量的温度
%%%接下来进行插值分为76X125份
X1=-38:1:38;
Y1=0:1:125;
[X,Y,Z]=griddata(x,y,z,X1',Y1,'v4');%%样条插值
subplot(2,5,3)    %%第3个小图,2代表2行,5代表5列,一共2*5个图,后面3表示第几个图
contourf(X,Y,Z,'LineStyle','none');%%不显示刻度值
xlabel('22h')%%%x轴的标注,你需要显示什么就在引号里改为几小时



%%%%%%第4次测量
z=data(4,:);%%第3个时间段测量的温度
%%%接下来进行插值分为76X125份
X1=-38:1:38;
Y1=0:1:125;
[X,Y,Z]=griddata(x,y,z,X1',Y1,'v4');%%样条插值
subplot(2,5,4)    %%第4个小图,2代表2行,5代表5列,一共2*5个图,后面4表示第几个图
contourf(X,Y,Z,'LineStyle','none');%%不显示刻度值
xlabel('28h')%%%x轴的标注,你需要显示什么就在引号里改为几小时

%%%%%%第5次测量
z=data(5,:);%%第3个时间段测量的温度
%%%接下来进行插值分为76X125份
X1=-38:1:38;
Y1=0:1:125;
[X,Y,Z]=griddata(x,y,z,X1',Y1,'v4');%%样条插值
subplot(2,5,5)    %%第4个小图,2代表2行,5代表5列,一共2*5个图,后面4表示第几个图
contourf(X,Y,Z,'LineStyle','none');%%不显示刻度值
xlabel('38h')%%%x轴的标注,你需要显示什么就在引号里改为几小时



%%%%%%第6次测量
z=data(6,:);%%第3个时间段测量的温度
%%%接下来进行插值分为76X125份
X1=-38:1:38;
Y1=0:1:125;
[X,Y,Z]=griddata(x,y,z,X1',Y1,'v4');%%样条插值
subplot(2,5,6)    %%第4个小图,2代表2行,5代表5列,一共2*5个图,后面4表示第几个图
contourf(X,Y,Z,'LineStyle','none');%%不显示刻度值
xlabel('54h')%%%x轴的标注,你需要显示什么就在引号里改为几小时

%%%%%%第7次测量
z=data(7,:);%%第3个时间段测量的温度
%%%接下来进行插值分为76X125份
X1=-38:1:38;
Y1=0:1:125;
[X,Y,Z]=griddata(x,y,z,X1',Y1,'v4');%%样条插值
subplot(2,5,7)    %%第4个小图,2代表2行,5代表5列,一共2*5个图,后面7表示第几个图
contourf(X,Y,Z,'LineStyle','none');%%不显示刻度值
xlabel('62h')%%%x轴的标注,你需要显示什么就在引号里改为几小时


%%%%%%第8次测量
z=data(8,:);%%第3个时间段测量的温度
%%%接下来进行插值分为76X125份
X1=-38:1:38;
Y1=0:1:125;
[X,Y,Z]=griddata(x,y,z,X1',Y1,'v4');%%样条插值
subplot(2,5,8)    %%第4个小图,2代表2行,5代表5列,一共2*5个图,后面7表示第几个图
contourf(X,Y,Z,'LineStyle','none');%%不显示刻度值
xlabel('73h')%%%x轴的标注,你需要显示什么就在引号里改为几小时

%%%%%%第9次测量
z=data(9,:);%%第3个时间段测量的温度
%%%接下来进行插值分为76X125份
X1=-38:1:38;
Y1=0:1:125;
[X,Y,Z]=griddata(x,y,z,X1',Y1,'v4');%%样条插值
subplot(2,5,9)    %%第4个小图,2代表2行,5代表5列,一共2*5个图,后面7表示第几个图
contourf(X,Y,Z,'LineStyle','none');%%不显示刻度值
xlabel('85h')%%%x轴的标注,你需要显示什么就在引号里改为几小时

%%%%%%第10次测量
z=data(10,:);%%第3个时间段测量的温度
%%%接下来进行插值分为76X125份
X1=-38:1:38;
Y1=0:1:125;
[X,Y,Z]=griddata(x,y,z,X1',Y1,'v4');%%样条插值
subplot(2,5,10)    %%第4个小图,2代表2行,5代表5列,一共2*5个图,后面7表示第几个图
contourf(X,Y,Z,'LineStyle','none');%%不显示刻度值
xlabel('87h')%%%x轴的标注,你需要显示什么就在引号里改为几小时

二维温度图情况

温度分布变化情况

  • 12
    点赞
  • 64
    收藏
    觉得还不错? 一键收藏
  • 15
    评论
### 回答1: 要使用MATLAB绘制二维温度场,可以按照以下步骤进行操作: 1. 定义网格:首先,定义一个二维网格,可以使用`meshgrid`函数创建网格的X和Y坐标矩阵。可以设定矩阵的大小和间隔,以适应你的需求。 2. 计算温度:根据实际问题,设置温度的计算公式或者导入温度数据。计算得到一个与网格大小相等的二维矩阵,表示每个网格点的温度值。 3. 绘制温度场:使用`pcolor`或者`contourf`函数将温度矩阵绘制成二维颜色或者等温线。`pcolor`函数可以设置网格线的显示与否,`contourf`函数可以设置等温线的填充颜色。 4. 添加标题、标签和颜色栏:使用`title`函数添加一个标题,使用`xlabel`和`ylabel`函数添加轴标签。使用`colorbar`函数添加一个颜色栏,表示温度与颜色之间的对应关系。 5. 美化形:可以根据需要进行调整和修饰,例如更改颜色方案、调整温度范围或者添加例等等。 6. 显示形:使用`axis`函数设置坐标轴范围,然后使用`hold on`函数保持当前像,使用`grid`函数添加网格线。最后使用`hold off`函数释放保存的像,使用`imshow`函数显示最终的温度场像。 总结:通过定义网格、计算温度、绘制温度场、添加标题和标签、美化形以及显示形等步骤,可以使用MATLAB绘制出二维温度场像。 ### 回答2: 要使用MATLAB绘制二维温度场,首先需要准备一组二维温度数据。这些数据可以是实际测量得到的,也可以是通过数学模型计算得到的。 一种绘制二维温度场的常用方法是使用contour函数。该函数通过将平面分割成许多小区域,并根据温度数据的变化在每个区域内绘制相应的等温线。具体步骤如下: 1.准备温度数据:将温度数据以二维矩阵的形式存储,其中每个元素表示某个位置的温度值。可以根据需要自己定义数据,也可以导入外部数据文件。 2.创建等温线:运行contour函数来绘制等温线。例如,可以使用以下代码: ```matlab contour(Temperatures) ``` 其中,Temperatures是包含温度数据的二维矩阵。运行该代码将绘制出温度场,并在像中显示等温线。 3.定制像:可以通过调整contour函数的参数来定制绘效果。例如,可以设置等温线的数量、颜色、标签等。也可以添加标题、坐标轴标签等来增加像的可读性。 另外,如果要绘制三维的温度场,可以使用surf函数,该函数可以在三维空间中绘制温度数据的曲面。具体步骤与绘制二维温度场类似,只需要将二维温度数据升维为三维矩阵即可。 综上所述,使用MATLAB绘制二维温度场的步骤包括准备温度数据、创建等温线、定制像。这些步骤可以根据具体需要进行调整和修改,以满足不同的温度场绘制要求。 ### 回答3: 要使用MATLAB绘制二维温度场,可以按照以下步骤进行: 1. 定义网格:通过确定网格的大小和精度来创建一个二维坐标系,用于表示温度场。可以使用`linspace`函数定义x和y方向上的坐标点。 2. 定义温度场:根据具体的问题,可以使用数学模型或实验数据来定义温度场的分布。首先创建一个与网格大小相同的矩阵,用于存储温度场数据。可以使用循环结构或矩阵运算来计算每个网格点的温度值。例如,可以使用高斯函数或正弦函数来生成一个模拟温度分布。 3. 绘制温度场:使用`pcolor`函数将温度场数据绘制为彩色像。通过将温度场数据作为输入参数,可以在二维坐标系上显示不同位置的温度值。可以使用颜色映射将温度值映射为不同的颜色。 4. 添加坐标轴和标签:使用`xlabel`和`ylabel`函数添加x和y坐标轴的标签。可以使用`title`函数添加一个标题,描述温度场的特征。 5. 添加例:如果需要,可以使用`colorbar`函数添加一个色标来解释温度值和颜色之间的对应关系。 下面是一个简单的示例代码,用于绘制一个高斯分布的二维温度场像: ```matlab % 定义网格 x = linspace(-2, 2, 100); y = linspace(-2, 2, 100); [X, Y] = meshgrid(x, y); % 定义温度场 sigma = 0.5; T = exp(-((X.^2 + Y.^2) ./ (2 * sigma^2))); % 绘制温度场 figure; pcolor(X, Y, T); shading interp; colorbar; % 添加坐标轴和标签 xlabel('X'); ylabel('Y'); title('二维温度场'); % 添加例 colorbar; ``` 这段代码将生成一个宽高为2个单位的二维温度场像,其中温度分布呈高斯型。水平和垂直坐标的范围为-2到2。像的颜色根据温度值进行映射,利用颜色栏来解释不同颜色和温度之间的对应关系。
评论 15
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值