Создать список координатных точек, используя список координат по осям 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,

Другие вопросы по тегам