Я пытаюсь построить некоторые данные для измерения, сделанного между двумя поверхностями. Направление z в системе определяется как нормальное к поверхностям. Проблема в том, что вдоль оси x моего графика я меняю расстояние между двумя поверхностями, что означает, что для каждого среза изменяется минимальное/максимальное значение оси y. Я обошёл это, представив нормализованную ось Y, где z_min — нижняя поверхность, а z_max — верхняя поверхность: 
Однако такое представление несколько искажает данные. В идеале я хотел бы показать фактическое расстояние до стены по оси Y и просто оставить области за пределами границ системы белыми. Я (плохо) набросал то, что представляю здесь (фактическое распределение на тепловой карте, конечно, должно выглядеть иначе): 
Я могу довольно легко изобразить то, что хочу, в виде 3D-графика рассеяния, например: 
Но как преобразовать данные в форму для построения тепловой карты?
Я предполагаю, что мне придется взорвать массив MxN и заполнить недостающие значения с помощью интерполяции или просто пометить их как NAN? Но тогда я также не совсем уверен, как добавить жесткую отсечку к моей цветовой схеме, чтобы сделать все за пределами системы белым.


