How to make a surface plot for two vectors?
11 ビュー (過去 30 日間)
古いコメントを表示
Hello,
I have two row-vectors, A (1X8000) and B (1X8000). What I want is their surface plot. I tried the commands below:
surf(A,B)
colorbar
But it does not work. The following error occurs.
Error using surf
Z must be a matrix, not a scalar or vector.
How can the surface plot of the two variables be made? Your help is valuable.
1 件のコメント
Nitya Patel
2023 年 6 月 23 日
Depending on what your data represents, there could be different ways to do it. One of the ways possible is this:
M = [A; B]';
surf(M);
回答 (1 件)
Walter Roberson
2023 年 6 月 23 日
You cannot do that. surf() and surface() can only handle 2D grids of data. For surf() and surface() the X and Y data do not need to be rectangular or even rectilinear -- you can even use them to plot a hemi-sphere for example -- but they do need to be 2D.
If you had three vectors instead of two vectors, you could consider using tools such as griddata or scatteredInterpolant
0 件のコメント
参考
カテゴリ
Help Center および File Exchange で Surface and Mesh Plots についてさらに検索
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!