Plotting a 3D surface plot from scatter plot

27 views (last 30 days)
I currently have noise data measured for all combinations of 3 different variables (X axis ranging from 20 to 400 with 20 increment, Y axis with 4097 values representing frequency from 0 to 22000, and Z axis with 5 values representing flow speed from 20 to 60 with 10 increment). As you can see from the first image, I have managed to plot the scatter plot for this:
However, I would now like to create a 3D surface plot that only encapsulates the values that are higher than 3 (or red regions in the plot above). It is difficult to explain in writing how I am visualising this plot, I hope the following image can help with that:
Although I've drawn lines, I want a 3D surface around those lines going across the 5 different flow speeds. I hope this makes sense.
The data is stored in a table with 4 columns (representing X, Y, Z and noise data), and hence corresponding to 409700 rows for each combination of the three variables.

Accepted Answer

Akira Agata
Akira Agata on 27 Jun 2024
I would recommend the following step:
Step1. Create mesh grid by using meshgrid function
Step2. Interpolate the original data to the grid point by using griddata function
Step3. Visualize the 3D surface (e.g value = 3) by using isosurface function

More Answers (0)

Community Treasure Hunt

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

Start Hunting!