Draw 3 D from 4 data sets

How I can draw 3 D from the these data to get graph as atteched?
x1 = [60 65 70 75 80 85 90 95]
y 1= [717.7443511 450.2110549 315.3203173 281.0355881 310.2619146 367.5904781 425.4810863 466.5103523]
x2 = [32 34 36 38 40 42 44]
y2 = [2461.769179 2698.95206 2893.41954 2863.069124 2539.331353 1964.921629 1246.066407]

4 Comments

With the given data it is not possible to get the plots shown as attached.
You either need to pick 3 of the 4, or provide an equation for Z based on the values of X and Y.
Consider taking a look at some of the examples on the documentation page for surf.
Thank you for your replies
what about these data?
LL = [50.0 60.0 70.0 80.0 90.0 100.0 110.0]
UCS = [2695.6 1417.5 671.1 403.6 412.6 510.3 621.1]
PL = [15.0 20.0 25.0 30.0 35.0 40.0 45.0]
UCS = [9467.7 5552.5 2276.9 535.1 476.1 671.1 128.2 ]
I dont have equation for z
The values i got them from tests on soil

Sign in to comment.

Answers (1)

Ghufran Aldawood
Ghufran Aldawood on 4 Aug 2020
The data sets that you have don't have the same dimensions, if you have the same dimension on all sets, I assume you want to use the fourth set for color gradient. For that you can use the patch function in Matlab. I've attached code and figures.

9 Comments

Ghufran Aldawood thank you
I've tried the code but I coudnt apply the data
if possoble, I need the UCS values to be in z axis
below are new data with same demintions
LL = [50.0 60.0 70.0 80.0 90.0 100.0 110.0]
UCS = [2695.6 1417.5 671.1 403.6 412.6 510.3 621.1]
PL = [15.0 20.0 25.0 30.0 35.0 40.0 45.0]
UCS = [9467.7 5552.5 2276.9 535.1 476.1 671.1 128.2 ]
PL = [15.0 20.0 25.0 30.0 35.0 40.0 45.0];
UCS = [9467.7 5552.5 2276.9 535.1 476.1 671.1 128.2];
LL = [50.0 60.0 70.0 80.0 90.0 100.0 110.0];
figure(1)
stem3(PL, UCS, LL)
grid on
PL2 = linspace(min(PL), max(PL), 20);
UCS2 = linspace(min(UCS), max(UCS), 20);
[X,Y] = meshgrid(PL2, UCS2);
Z = griddata(PL,UCS,LL,X,Y);
figure(2)
surf(X, Y, Z);
grid on
set(gca, 'ZLim',[0 100])
shading interp
Thank you for your help.
In your code you just include one UCS where for each LL there is UCS value
the same for PL. is there what make the UCS values to be in z axis?
LL1 = [50.0 60.0 70.0 80.0 90.0 100.0 110.0]
UCS 1 = [2695.6 1417.5 671.1 403.6 412.6 510.3 621.1]
PL 2 = [15.0 20.0 25.0 30.0 35.0 40.0 45.0]
UCS 2 = [9467.7 5552.5 2276.9 535.1 476.1 671.1 128.2 ]
You can't graph in 3D with 4 data sets.
Thank you I thought it is possible where I have 3 variables LL,PL, UCS But with different values for ucs
You have UCS 1 which is one variable, and UCS 2 which is a second variable. It does not matter that they have the same name. For example, here are 3 variables:
X1 = 1,5,10,15,20
X2 = 1,2,3,4,5
X3 = 2,4,6,8,10
The figure:
The code:
X1 = [1 5 10 15 20];
X2 = [1 2 3 4 5];
X3 = [2 4 6 8 10];
plot3(X1,X2,X3);
It’s helpful Thank you
Glad I can help. Good luck!

Sign in to comment.

Categories

Find more on Graphics Object Properties in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!