在Matlab中用二维数组画云图

来源:互联网 发布:mac 虚拟机发热严重 编辑:程序博客网 时间:2024/06/05 03:25

自己在网上搜了半天,也没找到用Matlab绘制云图的方法,于是就自己动手瞎琢磨了下,居然弄出来了。

云图需要的数据一般都是这样的格式:第一列x坐标、第二列y坐标、第三列u、第四列v。。。一次类推

本例中就以x坐标、y坐标、第三列为u来说明。

绘制的效果如下:


实现的代码如下,如有错误还望大家指正:

%利用griddata函数绘制应力云图类型的图%取z=log(xy)clear allclose allclcrx=randi([1 1000]);ry=randi([500 1500]);x=linspace(-rx,rx,50);%生成[-rx,rx]区间上的50个点y=linspace(-ry,ry,50);%生成[-ry,ry]区间上的50个点z=log(x.*y);%计算zxm=linspace(min(x),max(x),200);%用于griddataym=linspace(min(y),max(y),200);%用于griddata[X,Y,Z]=griddata(x,y,z,xm',ym,'v4');%注意那个xm必须要转置,不然会出错contourf(X,Y,Z,200);%绘制云图shading flat%保持光滑效果


0 0
原创粉丝点击