4次元表示したいです。

6 Ansichten (letzte 30 Tage)
ryo tanaka
ryo tanaka am 8 Jun. 2019
Bearbeitet: Yoshio am 10 Jun. 2019
3次元+温度表示の4次元データを作成したいです。
下の画像のように中心から外側にいくにつれて温度が低くなっているのを
4次元座標での表示をしたいです。
どのような方法で中心から外側に行くにつれて温度が低くなっているのを
4次元表示できますでしょうか?
教えてください。
無題.png

Antworten (1)

Yoshio
Yoshio am 8 Jun. 2019
Bearbeitet: Yoshio am 8 Jun. 2019
こんな感じではいかがでしょうか?
alphaalphamapについては各々ドキュメントをご覧ください。
EPSO=8.854214871e-12;
CHARGE=1.6021918e-19;
x=-0.1:0.0025:0.1;
y = x;
z = x;
[X,Y,Z] = meshgrid(x,y,z);
u0=4.0*pi*EPSO*sqrt(X.^2+Y.^2+Z.^2+eps);
u=CHARGE*u0.^-1;
V = log(u);
xslice = [0,0.1]; yslice = [0.0,0.1]; zslice = [-0.1,0];
h = slice(X,Y,Z,V,xslice,yslice,zslice);
xlabel('X');ylabel('Y');zlabel('Z');
caxis([min(V(:)) -16.2])
axis equal
set(h,'EdgeColor','none','FaceColor','interp',...
'FaceAlpha','interp')
alpha('color')
alphamap('increase',.3)
rotate3d
untitled.bmp
  5 Kommentare
Yoshio
Yoshio am 10 Jun. 2019
Bearbeitet: Yoshio am 10 Jun. 2019
この式は例題としてクーロンの法則を使っただけですので、気にされないでください。
本質は
u = a/sqrt(X.^2+Y.^2+Z.^2);
で中心に行くほど大きな値になります。ryo tanakaさんの表したい温度の式で置き換えてください。
V = log(u)としているのは、人間が見てわかる色の領域に値を圧縮しています。
温度範囲が狭ければ、uをそのまま表示すれば良いと思います。
ryo tanaka
ryo tanaka am 10 Jun. 2019
返信ありがとうございます。
そういった意味だったのですね、ご丁寧にありがとうございました。
参考にさせてもらって作成してみたいと思います。

Melden Sie sich an, um zu kommentieren.

Tags

Community Treasure Hunt

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

Start Hunting!