4D plot - representing 3 variables function

3 views (last 30 days)
Matan
Matan on 22 Dec 2016
Commented: Neel Kanwal on 9 Mar 2020
4D plotting:
I have 3 independent variables - x(1,n) , y(1,m) , z(1,l) - and I have matrix F(n,m,l) - corespond to every value of [x,y,z].
How can I represent F on a 3D grid?
Maybe with a surface, where F values represented in color?
(something like the picture shown here)
  2 Comments
ErikaZ
ErikaZ on 3 Aug 2018
Where you able to find a solution? Would you share the code? I am in the same position.
zhiyong zhang
zhiyong zhang on 11 Nov 2019
Have you found any solution? I have the same question.

Sign in to comment.

Answers (2)

John BG
John BG on 22 Dec 2016
Edited: John BG on 22 Dec 2016
KSSV answer is still a 3D plot only.
You fix constant one of the x y z, replace the constant variable with the 4th variable and then plot for different constant values. Like taking photos.
Some people build a film for the sweep of a 4th variable.
may be you want to try this one
This is a Mathworks support team to a similar answer
Alternatively you build a custom 4D axis and try to 'see' 4D in 3D than can be messy but sometimes works, there is an explanation here
but a cube inside another cube is going to overlap data.
have fun
if you find my answer useful would you please mark it as Accepted Answer by clicking on the ACCEPT ANSWER button?
thanks in advance for time and attention

KSSV
KSSV on 22 Dec 2016
clc; clear
[X,Y,Z] = peaks(100);
C = rand(size(Z)) ;
figure
surf(X,Y,Z,C);
colorbar
shading interp
  1 Comment
Neel Kanwal
Neel Kanwal on 9 Mar 2020
How to add function in this code. It looks independent of function.

Sign in to comment.

Products

Community Treasure Hunt

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

Start Hunting!