Plotting hyperplane created using meshgrid (something simple)

1 回表示 (過去 30 日間)
John G
John G 2019 年 7 月 13 日
コメント済み: Star Strider 2019 年 7 月 13 日
Dear all,
I created the following hyperplane:
y = [-20:0];
z = [-30:-5];
x = [-50:50];
[xx,yy,zz] = meshgrid(x,y,z);
When I try to plot it using surf(xx,yy,zz) I get an error "Value must be a vector or 2D array of numeric type".
How do I solve this?
Thank you a lot!

採用された回答

Star Strider
Star Strider 2019 年 7 月 13 日
I am not certain what you want to do.
One approach:
N = 25;
y = linspace(-20,0,N);
x = linspace(-50,50,N);
z = linspace(-30,-5,N);
B = [x(:) y(:) ones(N,1)] \ z(:);
[xx,yy] = meshgrid(x,y);
zz = B(1)*xx + B(2)*yy + B(3)*ones(size(xx));
figure
surf(xx, yy, zz)
grid on
You could also use the isosurface function, however it is not obvious to me what you would use as the ‘isovalue’.
  2 件のコメント
John G
John G 2019 年 7 月 13 日
Excellent, thanks a lot!
Star Strider
Star Strider 2019 年 7 月 13 日
As always, my pleasure!

サインインしてコメントする。

その他の回答 (0 件)

カテゴリ

Help Center および File ExchangeSurface and Mesh Plots についてさらに検索

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by