2D and 3D graphs
4 visualizzazioni (ultimi 30 giorni)
Mostra commenti meno recenti
Abdulkarim Almukdad
il 28 Ott 2020
Modificato: Abdulkarim Almukdad
il 29 Ott 2020
I'm looking for a way to draw the attached data (X,Y,S) as 2D graph with S being the color or as 3D graph that includes (X,Y,S) I have tried the mesh and surf. however, the plot doesn't give much information and the resulted shape is wrong, since the ultimate shape should looks like ( + ). Can anyone please help me with this?
2 Commenti
Jan
il 28 Ott 2020
Please make it as easy as possible to answer your question. Post the code you have already, such that the readers do not have to guess, which code is producing, what you think is wrong.
Abdulkarim Almukdad
il 28 Ott 2020
Modificato: Abdulkarim Almukdad
il 29 Ott 2020
Risposta accettata
KSSV
il 28 Ott 2020
Try this:
num = xlsread("Test1.xlsx") ;
[r,c] = size(num');
n = r/9;
% Arrange the data
A = permute(reshape(num,[c,r/n,n]),[2,1,3]);
A = permute(A,[2 1 3]) ;
% get x,y,s
x = squeeze(A(:,2,:)) ;
y = squeeze(A(:,3,:)) ;
s = squeeze(A(:,6,:)) ;
% do inteprolation and convert to grid
m = 100 ; n = 100 ;
xi = linspace(min(x(:)),max(x(:)),m) ;
yi = linspace(min(y(:)),max(y(:)),n) ;
[X,Y] = meshgrid(xi,yi) ;
S = griddata(x,y,s,X,Y) ;
% Make exact plus sign
idx = boundary(x(:),y(:)) ;
bx = x(idx) ; by = y(idx) ;
idx = inpolygon(X,Y,bx,by) ;
S(~idx) = NaN ;
% plot
pcolor(X,Y,S)
shading interp
colorbar
4 Commenti
KSSV
il 29 Ott 2020
Read about caxis. You can limit the color values here.....but it will effect the complete plot.
Più risposte (0)
Vedere anche
Categorie
Scopri di più su Specifying Target for Graphics Output in Help Center e File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!