3d plot help

7 views (last 30 days)
Clement Koh
Clement Koh on 15 Dec 2020
Commented: KSSV on 15 Dec 2020
Hey everyone!
I am struggling to plot a 3d graph like the photo that I attached. I have multiple data stating the number of people attending different event over a period of time. Therefore I hope to plot the number of people(z-axis) over the number of days (x-axis). And the different set of data will be plotted side by side along the y axis like shown in the 2 examples tt I showed.
I need help and advice on how I can plot these data, and also shade them in different color to differentiate them!
Thank you for your help in advance!!

Answers (2)

KSSV
KSSV on 15 Dec 2020
Something like this:
z1 = rand(10,1) ;
z2 = rand(10,1) ;
x1 = 1:length(z1) ;
x2 = 1:length(z2) ;
y1 = repmat(1,size(x1)) ;
y2 = repmat(10,size(x2)) ;
figure
hold on
patch(x1,y1,z1,'r') ;
patch(x2,y2,z2,'b') ;
view(3)
  2 Comments
Clement Koh
Clement Koh on 15 Dec 2020
Thank you for your help! However, my y axis only have 4 events. And when i input my x=0:100, y=[1 2 3 4], z=[1:100], patch(x,y,z), i will get an error where my matrix is not equal. Is it my y axis that is wrong?
P.S. Pretty new to this, so I don really understand some stuff.
KSSV
KSSV on 15 Dec 2020
It will definitely throw error. To use patch all x, y, z should be of same dimension. But still, for your data it will not form a region/ area. It will be a striaght line and you cannot see any colored region.
x=0:100 ;
y= linspace(1,4,length(x)) ;
z=[0:100];
patch(x,y,z),

Sign in to comment.


Bjorn Gustavsson
Bjorn Gustavsson on 15 Dec 2020
Have a look at the FEX-submission joyplot, it should give you functions to make these types of plots.
HTH
  1 Comment
Clement Koh
Clement Koh on 15 Dec 2020
Thanks! This is really a good function to study!

Sign in to comment.

Tags

Community Treasure Hunt

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

Start Hunting!