编写mymesh()函数:
function mymesh()
temdat=load('D:\test.txt');
if temdat== -1
('Error opening the file');
end
figure;
h=plot3(temdat(:,1),temdat(:,2),temdat(:,3));
set(h,'linestyle','none')
hold on;
grid on;
[x,y]=meshgrid(linspace(-150,150,500),linspace(-150,150,500));
z = griddata(temdat(:,1),temdat(:,2),temdat(:,4),x,y);
meshc(x,y,z);
axis([0,180,0,180]);
坐标放在D:\test.txt里(你也可以改成其他的),格式如下:
45 32 56
78 45 21
46 79 55
46 75 22
14 69 75
……
**********************************************************************
出现警告时:在X、Y相同的坐标上Z值不同,采用Z的平均值进行作图。
处理:
这不单是程序的问题,也是数据的问题。对于大量数据的话不会有太大影响,但是如果你没有得到理想的图的话,可以有两种解决办法:
1、改数据。
可以把xy相同的z不同的数据,删去一组。也可以把xy相同的z不同的数据,稍微改动x或y,使之不同。
2、改程序。
方法一有时不可取,比如要画圆的时候(这里说的是用散点数据作图,用系统函数的话,另当别论,只不过那是系统函数考虑的问题了),xy相同的坐标上很可能有z不同的两个值。这时可以改程序,把圆分两次画出,每次画半个圆,中间可用“hold on ;”是两次作图能同时显现。
程序你应该自己会改,和现在差不多,只是重复一次。
温馨提示:内容为网友见解,仅供参考