# ListPlot3D, how not to connect some points?

I have a list {{x1, y1, z1}, {x2, y2, z2}, ... , {xN, yN, zN}}, which I am plotting using ListPlot3D. The {x, y} values are in three of the four quadrants, that is $$x$$ and $$y$$ cannot both be positive. In the plot, I want this region to just remain white. However, because there are data points in the quadrants to the left {x<0, y>0} and below {x>0, y<0} this quadrant {x>0, y>0}, Mathematica connects the two quadrants and eventually gives regions within this absent quadrant.

Mathematica seems to be interpolating across a region where I have no data points. How do I ensure that nothing is plotted in the quadrant where there are no data points?

Use RegionFunction to limit the region for plotting. For instance, for a start you could use RegionFunction -> Function[{x, y, z}, x < 0 || y < 0] to limit plotting to the region where x OR y are negative.

Here is some made up data for demonstration:

coords =
Select[
Tuples[Range[-3, 3, 0.05], 2],
Not[Positive[#1] && Positive[#2]] & @@ # &
];

list = {#1, #2, Sin[#1^2 - #2^2]} & @@@ coords;


The results with just ListPlot3D displays the "interpolation" you mentioned:

ListPlot3D[list, ViewPoint -> {0.2, -0.5, 3}]


Instead, with RegionFunction, there is no data there:

ListPlot3D[
list,
ViewPoint -> {0.2, -0.5, 3},
RegionFunction -> Function[{x, y, z}, x < 0 || y < 0]
]