其实XZQ 发表于 2023-12-7 23:14:57

matlab题

利用珠江口模型1999年7月表层盐度计算结果(导入Ex13_PRE_Salinity.mat,包括
%744个小时的数据),画出每天12点的盐度分布图(共31张),将所有生成的图片统一
%放入文件夹Ex13FigDir中(图片命名格式:例如Ex13_DrawSalt001.png).
%
% 【数据说明】导入mat文件后,将获得两个结构体GridInfo和EcomSalt,结构如下:
%    GridInfo —— GridInfo.lon(经度)
%             —— GridInfo.lat(纬度)
%    EcomSalt —— EcomSalt.time(模拟时间,用日期值表示)
%             —— EcomSalt.data(表层盐度逐时模拟值)

FishC 发表于 2023-12-7 23:15:25

首先,你需要导入mat文件并获取GridInfo和EcomSalt的数据。以下是一个示例代码:

load('Ex13_PRE_Salinity.mat');

% 获取盐度数据
salinity_data = EcomSalt.data;

% 获取日期值
time = EcomSalt.time;

% 获取每天12点的数据索引
index = find(mod(time,1) == 0.5);

% 创建存放图片的文件夹
mkdir('Ex13FigDir');

% 循环生成每天12点的盐度分布图
for i = 1:length(index)
    % 获取当天的盐度数据
    salinity = salinity_data(:, index(i));
   
    % 画出盐度分布图
    figure;
    contourf(GridInfo.lon, GridInfo.lat, salinity);
    colorbar;
   
    % 设置标题和标签
    title(['Salt Distribution at 12:00 on Day ' num2str(i)]);
    xlabel('Longitude');
    ylabel('Latitude');
   
    % 保存图片
    filename = sprintf('Ex13_DrawSalt%03d.png', i);
    saveas(gcf, fullfile('Ex13FigDir', filename));
   
    % 关闭当前图像窗口
    close;
end

这段代码首先加载mat文件并获取盐度数据和日期值。然后找到每天12点的数据索引,并循环生成每天12点的盐度分布图。最后将生成的图片保存到Ex13FigDir文件夹中,图片命名为Ex13_DrawSalt001.png、Ex13_DrawSalt002.png等等。

以上回复来自 FishC AI 小助理,如未能正确解答您的问题,请继续追问。
页: [1]
查看完整版本: matlab题