Ao plotar o campo escalar 3d com o Matlab, por que o eixo X troca com Y?

1

Quando eu desenho a isosuperfície de um campo escalar 3d A(i,j,k) (i = 1 ~ 31, j = 1 ~ 151, k = 1 ~ 151) usando o Matlab, na figura, o índice j corresponde ao eixo X, i corresponde ao eixo Y. Como o Matlab organiza os dados 3D?

Aqui está a figura que eu desenhei:

A malha cúbica é 31x151x151. Mas na figura, o comprimento na direção X é 151, o comprimento na direção Y é 31. E a figura é a imagem espelhada da que eu quero.

    
por sash 12.07.2018 / 15:12

1 resposta

0

De acordo com os documentos do Matlab para a função mesh , parece que o Y eixo usa o primeiro índice da matriz e não o segundo. POR EXEMPLO. em um par de (i,j) index, i estará no eixo Y e j estará no eixo X. Eu tive uma discussão bastante extensa sobre isso com colegas de trabalho, e parece vir até a maneira como as lojas Matlab suas matrizes internamente: ele armazena uma lista de colunas ( maior ordem de coluna ), há uma explicação bastante interessante aqui: link

TL; DR a primeira dimensão é as colunas (Y), depois as linhas (X), depois todos os eixos adicionais em ordem.

    
por 12.07.2018 / 15:56