мне нужно извлечь значение данных для конкретной координаты из meshgrid в MATLAB, мой код выглядит следующим образом:Извлечение значения данных из выходного meshgrid MATLAB
PaarX=Paar(:,1);
PaarX1=PaarX(1:20:length(PaarX));
PaarY=Paar(:,2);
PaarY1=PaarY(1:20:length(PaarY));
x=PaarX;
y=PaarY;
v=Paar(:,3);
[xi, yi]=meshgrid(PaarX1, PaarY1);
vq=griddata(x, y, v, xi, yi, 'cubic');
PaarX
, PaarY
и v
являются X, Y и Z значения поверхности, при этом Z означает значения, которые должны быть интерполированы. PaarX1
и PaarY1
- значения, используемые в meshgrid с каждым полученным значением 20 (массив был слишком большим до этого). Мне нужно извлечь интерполированные значения Z в vq
из определенных координат X и Y.
К сожалению, я получаю эту ошибку: индекс превышает размеры матрицы. Ошибка в Интерполяция (строка 18) fprintf ('интерполированное значение при х =% г и у =% г является % г', PaarX1 (n1), PaarY1 (П2), VQ (n1, n2)) – Jay
Я думаю, что это означает, что индекс не содержит значений координат X и Y. – Jay
OK! Я вижу, что вы используете 'meshgrid'. Я исправил свой ответ. –