如何以日期(x轴),时间(y轴)和z值作为随x和y变化的变量绘制轮廓图?我也附加了我的数据和我正在使用的代码。但是我在NaN值周围没有得到平滑的曲线。任何人都可以在代码中帮助我。
fid=fopen('D:\NSSS_2019\INSAT_3D.csv');
for i=1
tline=fgets(fid);
end
data=textscan(fid,'%s %s %f %f %f %f %f %f %f %f','Delimiter',',');
x=data{1,1}; y=data{1,2}; z=data{1,10};
day={};
for i=1:length(x)
p=x(i); p=char(p); m=y(i); m=char(m);
len=length(m);
if len<5
n=strcat('0',m);
else
n=m;
end
d=strcat(p,n);
day{i}=d;
end
day=day';
day1=datenum(day,'dd');
newStr = strrep(y,':','.');
time1=[];
for k=1:length(newStr)
aa=newStr(k);
new=str2num(char(aa));
time1(k)=new;
end
time1=time1';
% Grid
x0 = min(day1) ; x1 = max(day1) ;
y0 = min(time1) ; y1 = max(time1) ;
N = 1488 ;
xl = linspace(x0,x1,N) ;
yl = linspace(y0,y1,N) ;
[X,Y] = meshgrid(xl,yl) ;
%% do inteprolation
P = [day1,time1] ; V = z ;
F = TriScatteredInterp(P,V) ;
F.Method = 'natural';
pq = [X(:),Y(:)] ;
vq = F(pq) ;
Z = vq ;
Z = reshape(Z,size(X)) ;
contourf(X,Y,Z) ;
datetick('x','dd');
hcb=colorbar
答案 0 :(得分:0)
您可以使用cftool进行绘图。唯一的要求是参数和函数的图像。然后,您可以将所有内容导出到工作区
答案 1 :(得分:0)
这需要重塑数据并使用<Path>/<generatedName>.pdf
。
shading flat