matlab矩阵云图图像化处理

目标,

针对一个平面内某个指标在不同位置会有不同的数值,

因而得到一个平面的二维矩阵,

利用matlab绘制云图。

之前的记录比较散,

网上很多例子是基于某一个函数,因而xy的坐标是已知的,且Z是根据函数算出来的。

另一类是已知3列数据,两列为坐标数值,最后一列为Z。

当面对大量数据时,无能为力。

当然面对几十万的数据点的优化还没有考虑。

目前只能通过改变插值方式,

但是得到的拟合结果并不理想。

由此做引:

%a=[10 20 30;20 30 40; 40 50 60];%例子
a=xlsread('randarray.xlsx');  %读取
[M N]=size(a);%获取矩阵大小
[X, Y] = meshgrid(1:M, 1:N);dm = [Y(:) X(:)]; %获取矩阵行列坐标
Xx=dm(:,1);Yy=dm(:,2);%分别导出行列数据
b=a(:); %将矩阵数据强制变为列向量,注意与前面的Xx,Yy对应

xm=linspace(min(Xx),max(Xx),100);%用于griddata
ym=linspace(min(Yy),max(Yy),100);%用于griddata

[X,Y,Z]=griddata(Xx,Yy,b,xm',ym,'v4');%注意xm必须要转置!!!!
figure(1); %打开图1
%contourf(X,Y,Z,200);%绘制二维云图
contourf(X,Y,Z,'LineStyle','none')   %去掉黑色等高线
shading flat;%保持光滑效果
hold on;
figure(2); %打开图2
surf(X,Y,Z);           %绘制三维云图
shading interp;     %去掉等高线
hold on;

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值