3D boxplotの方法

4 次查看(过去 30 天)
Ryuto Shigenobu
Ryuto Shigenobu 2020-4-15
评论: Kenta 2020-4-19
3d boxプロットをするにはどうしたらよいでしょうか?
例えば以下のようなデータがあるとして、
[X,Y] = meshgrid(-5:.5:5);
Z = Y.*sin(X) - X.*cos(Y);
figure;
s = surf(X,Y,Z,'FaceAlpha',0.5)
下記のような図を表示させることは可能でしょうか。
  2 个评论
Kenta
Kenta 2020-4-15
こんにちは、確認させてほしいのですが、ほしい最終結果のxy座標の値は何に相当しているのでしょうか。
例えば、z=f(x,y)を考えて、箱ひげ図はz方向の値で作成し、それぞれのx, yのペアで取る値を座標(x,y)にて表示するということでしょうか?
Ryuto Shigenobu
Ryuto Shigenobu 2020-4-16
すみません、質問が間違っておりました。
2次元配列をboxplotで表示することは可能ですが、3次元配列を3d でboxplotすることは可能でしょうか?
2次元配列の場合
f2=rand(10,10)
figure,boxplot(f2)
3次元配列の場合
f3=rand(10,10,10)
figure,boxplot(f3)%これは実行できない
z=f(x,y,t)と考えて、tを集約した時にboxplotでxとyに対するzの広がりを表示させたいと思っております。あわよくば、surfのようにboxの境界を面で表現できればと思っています。

请先登录,再进行评论。

采纳的回答

Kenta
Kenta 2020-4-16
コメントのほう、返信ありがとうございました。ご質問を詳しく理解することができました。
3Dの箱ひげ図は以下にソースコードがありました。
ご質問の内容ですと、(それが満足のいく見せ方かどうかはおいておいて)上のソースコードで正しく表示はできると思います。
ただ、スムーズにつないで可視化したいのであれば、上のものに加えて、pachという関数でつなげるかもしれません。
例えば以下のようにスムーズにつなげることができます。surf関数でもよさそうですが、patchのほうがきれいに見えるかもしれません。
  2 个评论
Ryuto Shigenobu
Ryuto Shigenobu 2020-4-18
概ね解決致しました。
アドバイスありがとうございます。
Kenta
Kenta 2020-4-19
はい、そう聞けてよかったです。またよりよい3Dのbox plotができたら教えてもらえると幸いです。よろしくお願いいたします。

请先登录,再进行评论。

更多回答(0 个)

产品

Community Treasure Hunt

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

Start Hunting!