How can I generate a TEC map by interpolating a 3D matrix in a .mat file?

23 visualizzazioni (ultimi 30 giorni)
I have hourly data and a TECU value for each grid point in the matte file. And I want to produce a TEC map using this data.
long=-180:5:180;
lat=87.5:-2.5:-87.5;
[long2, lat2]=meshgrid(long, lat);
My data 73x71x13 in such a 3 dimensional matrix. I got the error how I did the interpolation. How can i produce a TEC map like in the image?

Risposta accettata

Meg Noah
Meg Noah il 6 Gen 2020
clc
close all
clear all
filename = 'gps_tec2hr_igs_20150317_v01.cdf';
[data, info] = cdfread(filename);
latIGS = cdfread(filename,'Variable','lat'); latIGS = latIGS{1};
lonIGS = cdfread(filename,'Variable','lon'); lonIGS = lonIGS{1};
igs = cdfread(filename,'Variable','tecIGS');
Epoch = cdfread(filename,'Variable','Epoch');
figure(1)
for iplot = 1:12
subplot(3,4,iplot)
imagesc(lonIGS,latIGS,igs{iplot},[0 104]);
colormap(jet);
colorbar
title([datestr(todatenum(Epoch{iplot}),'dd-mmm-yyyy HH:MM:SS')]);
set(gca,'ydir','normal');
end
figure(2)
iplot= 10; % get the data for 18:00
imagesc(lonIGS,latIGS,igs{iplot});
colormap(jet);
colorbar
title({'IGS 2h TEC Map';'TEC/TECU'; ...
[datestr(todatenum(Epoch{iplot}),'dd-mmm-yyyy HH:MM:SS')]});
set(gca,'ydir','normal');
axis equal
axis tight
% georeference the data
latIGS = double(latIGS);
lonIGS = double(lonIGS);
R1 = makerefmat('RasterSize',size(igs{iplot}), ...
'Latlim', [min(latIGS(:)) max(latIGS(:))], ...
'Lonlim', [min(lonIGS(:)) max(lonIGS(:))] );
dataTEC = flipud(igs{iplot});
figure(3);
hold on;
mapshow(zeros(size(dataTEC)),R1,'CData',dataTEC,'DisplayType','surface');
cW = mapshow(dataTEC,R1,'DisplayType','contour','linecolor','black', ...
'showtext','on');
colormap(jet)
colorbar('location','southoutside');
axis equal
axis tight
title({'IGS 2h TEC Map';'TEC/TECU'; ...
[datestr(todatenum(Epoch{iplot}),'dd-mmm-yyyy HH:MM:SS')]});
figure(4);
gcm = worldmap([min(latIGS) max(latIGS)], [min(lonIGS) max(lonIGS)]);
hold on;
load('coast');
geoshow(gcm,dataTEC,R1,'DisplayType','texturemap');
plotm(lat,long,'color','black');
colormap(jet)
colorbar('location','southoutside');
axis equal
axis tight
title({'IGS 2h TEC Map';'TEC/TECU'; ...
[datestr(todatenum(Epoch{iplot}),'dd-mmm-yyyy HH:MM:SS')]});
  4 Commenti

Accedi per commentare.

Più risposte (0)

Categorie

Scopri di più su Animation in Help Center e File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by