4次元表示したいです。

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

Respuestas (1)

Yoshio
Yoshio el 8 de Jun. de 2019
Editada: Yoshio el 8 de Jun. de 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 comentarios
Yoshio
Yoshio el 10 de Jun. de 2019
Editada: Yoshio el 10 de Jun. de 2019
この式は例題としてクーロンの法則を使っただけですので、気にされないでください。
本質は
u = a/sqrt(X.^2+Y.^2+Z.^2);
で中心に行くほど大きな値になります。ryo tanakaさんの表したい温度の式で置き換えてください。
V = log(u)としているのは、人間が見てわかる色の領域に値を圧縮しています。
温度範囲が狭ければ、uをそのまま表示すれば良いと思います。
ryo tanaka
ryo tanaka el 10 de Jun. de 2019
返信ありがとうございます。
そういった意味だったのですね、ご丁寧にありがとうございました。
参考にさせてもらって作成してみたいと思います。

Iniciar sesión para comentar.

Etiquetas

Community Treasure Hunt

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

Start Hunting!