2015-11-25 1 views
1

Я управлял функцией оптимизации по поверхности z, определяемой двумя параметрами (x, y). Для каждой итерации я сохранил значения x,y,z в векторной форме. Я хотел бы построить z с использованием функции matlab surf, но для этого требуется, чтобы z является матрицей размера (length(x), length(y)).использовать функцию серфинга matlab на трех векторах без эквидистантных точек

Я нашел несколько способов сделать это, используя meshgrid, но это потребовало бы, чтобы мои очки в x и y были равномерно распределены друг от друга. Поскольку они являются результатом моего процесса оптимизации (отжига с некоторой случайностью в размере шага), точки в x и y неравномерно распределены друг от друга.
Есть ли хороший способ превратить мой вектор z в соответствующую матрицу?

+1

Возможно дублирование? [Это может работать] (http://stackoverflow.com/questions/30596988/matlab-surf-plot-data-structure) –

ответ

1

Похоже, вы после griddata:

griddata функция интерполирует поверхность в точках, указанных запросов (xq, yq) и возвращает интерполированные значения, vq. Поверхность всегда проходит через точки данных, определяемые x и y.

Смежные вопросы