matlab 三维画图函数错误提示:数据维度必须一致

用三维画图软件经常会出现下面错误

matlab 三维画图函数错误提示:数据维度必须一致_第1张图片

以mesh(x,y,z)为例:

主要原因是因为没有注意Z数据格式,Z必须是矩阵形式。而且Z矩阵的m*n必须与y,x相关,

mesh(X,Y,Z) 使用 Z 确定的颜色绘制线框网格,因此其颜色与曲面高度成比例。如果 X 和 Y 为向量,length(X) = n 且 length(Y) = m,其中 [m,n] = size(Z)。在本示例中,(X(j), Y(i), Z(i,j)) 是线框网格线的交点;X 和 Y 分别对应于 Z 的列和行。如果 X 和 Y 为矩阵,则 (X(i,j), Y(i,j), Z(i,j)) 是线框网格线的交点。XY 或 Z 中的值可以是数值、日期时间值、持续时间值或分类值。

若Z是你想要的矩阵,还出现这种错误,试一试量x,y换换位置,或者将Z转置。

建议,x,y设置步长建议使用linspace()函数,这样就能确保矩阵维度一致。

mesh(x,y,z)函数详情请参考https://ww2.mathworks.cn/help/matlab/ref/mesh.html?s_tid=srchtitle

其余三位绘图函数也是这样修改!

给学matlab的人,包括我自己一个勉励:路漫漫其修遠兮,吾將上下而求索

你可能感兴趣的:(matlab)