返回信息流txt中有一个三维数组,分别为x,y,z。现在我想将x,y作为横纵坐标,z为相应坐标的值,画出一个分布图来,效果大概如下
上图是我用[C,h] = contourf(peaks(50),100,'LineStyle','none');画出来的,contourf的功能是将一个矩阵描点画出,问题是我现在只有若干点坐标与其数值,请问有什么函数能实现我要的功能呢?或者需要将初始数据进行怎样的处理呢?还请大牛们指教一二
这是一条镜像帖。来源:北邮人论坛 / matlab / #7253同步于 2010/6/4
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Matlab机器人发帖
求助一个画图问题
yellow05112
2010/6/4镜像同步2 回复
订阅后,新回复会通过你的通知中心匿名送达。
2 条回复
你的意思是不是数据点(x, y, z)中x, y不是等间隔的?如果是这样可以利用有限的(x, y, z)先做插值,再画图
Nsps = 200;
[ XI, YI ] = meshgrid( linspace( min( x ), max( x ), Nsps ), linspace( min( y ), max( y ), Nsps ) );
ZI = griddata( x, y, z, XI, YI );
[C,h] = contourf( XI, YI, ZI, 100, 'LineStyle', 'none' );
当年高铁数据就是这么整的。。。
【 在 dazzlezhang 的大作中提到: 】
: 你的意思是不是数据点(x, y, z)中x, y不是等间隔的?如果是这样可以利用有限的(x, y, z)先做插值,再画图
: Nsps = 200;
: [ XI, YI ] = meshgrid( linspace( min( x ), max( x ), Nsps ), linspace( min( y ), max( y ), Nsps ) );
: ...................