griddata

Interpola dados espalhados em pontos de consulta.

Categoria: Mathematics > Interpolation

Sintaxe

vq = griddata(x, y, v, xq, yq)

Interpolação linear das amostras espalhadas v(x,y) nos pontos (xq,yq).

vq = griddata(x, y, v, xq, yq, method)

Usa o método indicado, como 'nearest', 'linear', 'natural', 'cubic' ou 'v4'.

vq = griddata(x, y, z, v, xq, yq, zq)

O mesmo para amostras em três dimensões.

Descrição

griddata constrói uma triangulação de Delaunay dos pontos de amostra e interpola dentro de cada triângulo. Os dados não precisam estar em grade regular, o que a diferencia de interp2.

O método linear é exato para dados que vêm de um plano. O método vizinho mais próximo copia o valor da amostra mais perto e é o único que retorna valores finitos fora do fecho. Para consultas repetidas sobre os mesmos dados, scatteredInterpolant evita refazer a triangulação.

Argumentos de entrada

x, y
Coordenadas dos pontos de amostra, vetores de mesmo comprimento.
v
Valores das amostras nesses pontos.
xq, yq
Coordenadas de consulta. Vetores de mesma forma dão valores nesses pontos; um vetor linha e um coluna definem uma grade.
method
Método de interpolação, padrão 'linear'.

Argumentos de saída

vq
Valores interpolados. Pontos fora do fecho convexo das amostras dão NaN, exceto no método 'nearest'.

Exemplo

Interpolando amostras de um plano

[x, y] = meshgrid(0:2);
v = x + 2*y;
griddata(x(:), y(:), v(:), 0.5, 1.5)
griddata(x(:), y(:), v(:), [0.4 1.6], [0.4 1.6], 'nearest')
Saída
ans = 3.5000
ans = 1×2

     0     6

Veja também

scatteredInterpolant griddatan interp2 delaunay meshgrid