Создать список координатных точек, используя список координат по осям X и Y
У меня есть этот номер:
x = [-4 -3.1 -2.2 -1.3 -0.4 0.5 1.4 2.3 3.2 4.1]
а также
y = [0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5]
Я хочу создать список координат в 2 столбцах [x y], используя эти числа самым простым и умным способом, не используя цикл.
Вот пример его создания с использованием цикла:
for h=1:11
for j=1:11
gridCoord((h-1)*11+j,1)=x(1,j);
gridCoord((h-1)*11+j,2)=y(1,h);
end
end
** Координата перемещается в направлении х в первую очередь.
Спасибо
1 ответ
Решение
Ты можешь использовать meshgrid
достичь того, что вы хотите
[yy, xx] = meshgrid(y, x);
gridCoord = [xx(:), yy(:)]
ПРИМЕЧАНИЕ: обычно вы увидите
meshgrid
примеры использования[xx,yy] = meshgrid(x,y)
; однако, так как вы указываете, что хотите, чтобы он был основным (изменениеx
во-первых), я изменил порядок, так как по умолчаниюmeshgrid
является главным столбцом (изменяет первый аргумент первым). Вы можете достичь того же эффекта, просто взяв транспонированиеxx
а такжеyy
до объединения их вgridCoord
,