3D - XRD plot

17 views (last 30 days)
mor levi
mor levi on 5 Jul 2022
Commented: Simon Chan on 5 Jul 2022
Hi
I wanted to plot 3D waterfall of XRD measurements but even after reading past answeres on the subject I don't succeed..
I have 4 sets of (x,y) as follows:
(Sample A(:,1),y1) % x values are the import of the 1st column from the measurement file that contains many columns but I just need the 1st
(Sample B(:,1),y2)
(Sample C(:,1),y3)
(Sample D(:,1),y4)
the 2D plot looks like this:
How to I make it looks like this?
So far I have:
[x,y]=meshgrid(Sample A(:,1),y1, Sample B(:,1),y2, Sample C(:,1),y3, Sample D(:,1),y4);
waterfall(x,y,z);
not sure what Z needs to be....
How can I continue?

Answers (1)

Simon Chan
Simon Chan on 5 Jul 2022
Let's see function plot3 can satisfy your requirement or not.
figure;
ax = gca;
hold(ax,'on');
plot3(ax,SampleA(:,1),repelem(1,1,length(SampleA(:,1))),y1);
plot3(ax,SampleB(:,1),repelem(2,1,length(SampleB(:,1))),y2);
plot3(ax,SampleC(:,1),repelem(3,1,length(SampleC(:,1))),y3);
plot3(ax,SampleD(:,1),repelem(4,1,length(SampleD(:,1))),y4);
hold(ax,'off');
xlabel(ax,'2theta(degrees)');
zlabel(ax,'Intensity (a.u.)');
ylabel(ax,'');
ax.YTickLabel={'(a)','(b)','(c)','(d)'};
  6 Comments
mor levi
mor levi on 5 Jul 2022
It works!
So in order to reproduce this graph to other results each data set should be the same length?
(both x2 same length as y2 as well as x2y2, x3y3 the same length)
Thanks!
Simon Chan
Simon Chan on 5 Jul 2022
Yes, they should be same length.

Sign in to comment.

Categories

Find more on Interactive Control and Callbacks in Help Center and File Exchange

Community Treasure Hunt

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

Start Hunting!