Я хочу знать самый простой способ вывести векторы на печать в MATLAB. Например:
a = [2 3 5];
b = [1 1 0];
c = a + b;
Я хочу визуализировать это векторное дополнение как head-to-tail/parallelogram метод. Как я вывожу эти векторы на печать с наконечником стрелки?
a = [2 3 5];
b = [1 1 0];
c = a+b;
starts = zeros(3,3);
ends = [a;b;c];
quiver3(starts(:,1), starts(:,2), starts(:,3), ends(:,1), ends(:,2), ends(:,3))
axis equal
Я согласен с Aamir, что представление arrow.m от Эрика Джонсона по обмену файлами MathWorks File Exchange является очень хорошим вариантом. Вы можете использовать его для иллюстрации различных методов векторного сложения, например:
Tip-to-tail метод:
o = [0 0 0]; %# Происхождение
a = [2 3 5]; %# Вектор 1
b = [1 1 0]; %# Вектор 2
c = a+b; %# Результат
arrowStarts = [o; a; o]; %# Начальные точки для стрелок
arrowEnds = [a; c; c]; %# Окончательные точки для стрелок
стрелка(arrowStarts,arrowEnds); %# Стрелки типа Plot
Метод параллелограммы:
o = [0 0 0]; %# Происхождение
a = [2 3 5]; %# Вектор 1
b = [1 1 0]; %# Вектор 2
c = a+b; %# Результат
arrowStarts = [o; o; o]; %# Начальные точки для стрелок
arrowEnds = [a; b; c]; %# Окончательные точки для стрелок
стрелка(arrowStarts,arrowEnds); %# Стрелки типа Plot
Подожди;
lineX = [a(1) b(1); c(1) c(1)]; %# X данные для линий
lineY = [a(2) b(2); c(2) c(2)]; %# Y данные для линий
lineZ = [a(3) b(3); c(3) c(3)]; %# Z данные для линий
линия(lineX,lineY,lineZ,'Color',k','LineStyle',':'); %# Линии участка
Я нашел эту функцию стрелка (начало, конец)
на MATLAB Central, которая идеально подходит для рисования векторов с истинной величиной и направлением