generating a 3d surface from from [x,y,z,c] matrix
Afficher commentaires plus anciens
Dear all,
I have a dataset in a 8261x4 matrix where the first 3 columns represent x,y,z coordinate and the fourth column vlaues are ones as in the figure below:

thses are sunrays hitting a rectangular surface. the ones represent the power per ray. I want to generate a surface like in the next figure (it is a 2d plot using x&z only):

in the previous figure, the surface devidied by 25x25 (resolution) and the ones in the fourth column in the matrix were summed based on the grid resolution.
I include the y-axis because I have another data for tilted surfaces (3D), the end goal is to plot the flux map on multiple panels (shown in the figure below) and each panel will have a data like the martix I showed previously.

Thank you.
Réponses (1)
Andreas Bernatzky
le 7 Juin 2020
Hey Abdulelah,
I have made some approaches with density3D from:
should do the job for you. I have attached 2 images one with scatter3 and one with density 3D
posXvals = raydata1{:,1}
posYvals = raydata1{:,2};
posZvals = raydata1{:,3};
figure(1)
scatter3(posXvals,posYvals,posZvals);
figure(2)
density3D(posXvals',posZvals');
5 commentaires
Abdulelah Alswaiyd
le 8 Juin 2020
Modifié(e) : Abdulelah Alswaiyd
le 8 Juin 2020
Abdulelah Alswaiyd
le 8 Juin 2020
Modifié(e) : Abdulelah Alswaiyd
le 8 Juin 2020
darova
le 12 Juin 2020
what about griddata?
Andreas Bernatzky
le 15 Juin 2020
Modifié(e) : Andreas Bernatzky
le 15 Juin 2020
Hey Abduleah,
sorry for my late reply.
If you want to have the density actual as some numeric value for example Rays/Panel you calculate it by Thresholds and extracting correct x and y values. For example what I mean:
The panel in the mid on your isometric view reaches roughly from x: -0.8 to 0.8
easiest approach would be defining thresholds for each panel and find the amount of rays per panel by using the "find()" command.
Rough Exampel:
rayOnMidPanel = find(x>=-0.8 && x<= 0.8);
Andreas Bernatzky
le 15 Juin 2020
@darova
should also work yes. I have not thought about it.
Catégories
En savoir plus sur Surface and Mesh Plots dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!

