sfit型からの3次元等高線の作成

6 次查看(过去 30 天)
iga50storm
iga50storm 2017-11-16
编辑: Jiro Doke 2017-11-17
まず、測定点間を補間する曲面を"fit"関数を使って近似し、この操作によりsfitの型に近似曲面が作られました。 そのあと"plot"関数を用いて図の通り3次元の曲面と2次元の等高線をつくる所までできました。 しかし、3次元の等高線が作れず困っています。解決方法があれば教えていただけないでしょうか? (Web上で色々調べたのですが、plot関数でsfit型からの3次元等高線の命令が見つかりませんでした。)
x=[1;1;2;2;2;2;3;3;3;3;4;4];
y=[2;3;1;2;3;4;1;2;3;4;2;3];
Z=[89;90.7;87.5;90.9;91.8;90.4;90.5;90.1;86.1;91.8;91;92.3];
sf = fit([x, y],Z,'cubicinterp');
%3次元プロット
figure;
plot(sf,[x,y],Z);
%等高線プロット
figure;
plot(sf, [x,y],Z,'Style', 'Contour');
  2 个评论
michio
michio 2017-11-16
3次元等高線とはどういうイメージでしょうか?何か参考になる画像があれば教えてください。
iga50storm
iga50storm 2017-11-16
コメントありがとうございます。 contour3で描かれる等高線をイメージしています。

请先登录,再进行评论。

采纳的回答

Jiro Doke
Jiro Doke 2017-11-16
编辑:Jiro Doke 2017-11-17
sfit オブジェクトを使って X Y のグリッドに対して再評価し、 contour3 を呼べば良いと思います。
xx = linspace(min(x),max(x));
yy = linspace(min(y),max(y));
[XX,YY] = meshgrid(xx,yy);
ZZ = sf(XX,YY);
figure
contour3(XX,YY,ZZ,30)
  1 个评论
iga50storm
iga50storm 2017-11-16
解決致しました。 ご丁寧にソースコードまでありがとうございました。

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 近似の後処理 的更多信息

Community Treasure Hunt

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

Start Hunting!