How to make a contour plot with incomplete z data?

1 view (last 30 days)
I have a collection of intersection points of a square plane. Each intersection point has an intensity associated with it (doing light ray tracing). I need the intensity to be the elevation of the contour plot, and the points to be the x and y respectively. Areas not intersected by any rays need to have an elevation of zero. I have a vector that has x values of intersection, a vector that has y values of intersection, and a vector that has intensities. I'm not sure how to make a contour plot using this information. Using the contourf function with those vectors as an input says that Z must be at least a 2x2 matrix, and I don't know how to form this matrix when basically any point that isn't included needs to have an elevation of 0. Any guidance is appreciated!

Answers (1)

Sulaymon Eshkabilov
Sulaymon Eshkabilov on 5 Nov 2021
As I understood your question correctly, you'd need to employ something like this one to get controurf(Z) from the values of X and Y.
X = randi(255, 25, 1);
Y = randi(255, 25, 1);
XY = [X.*(X>175), Y.*(Y>175)];
Z = XY;
contourf(Z)

Categories

Find more on Contour Plots 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!