# How do I plot one 3D vector arrow for all points in a 3d scatter

23 views (last 30 days)
AV on 6 Dec 2019
Answered: AV on 9 Dec 2019
How do I plot one 3D vector arrow for all points in a 3d scatter?
I have the following code and wish to create one 3d vector arrow representing the overall direction of variables A, B and C combined.
Your help would be most welcome!
% creating 3d scatter plot
T = table((rand(100,3)));
T = [table(T.Var1(:,1),'VariableNames',{'A'}),table(T.Var1(:,2),'VariableNames',{'B'}),table(T.Var1(:,3),'VariableNames',{'C'})];
% Make a color index
nc = 16;
offset = 1;
% Create a 3D scatter plot using the scatter3 function
figure
scatter3(T.A, T.B, T.C, 20, 'filled')
view(-34, 14)
% Add title and axis labels
title('Title')
xlabel('A')
ylabel('B')
zlabel('C')

JESUS DAVID ARIZA ROYETH on 6 Dec 2019
Edited: JESUS DAVID ARIZA ROYETH on 6 Dec 2019
% creating 3d scatter plot
T = table((rand(100,3)));
T = [table(T.Var1(:,1),'VariableNames',{'A'}),table(T.Var1(:,2),'VariableNames',{'B'}),table(T.Var1(:,3),'VariableNames',{'C'})];
% Make a color index
nc = 16;
offset = 1;
% Create a 3D scatter plot using the scatter3 function
zer=zeros(size(T,1),1)
figure
plot3(T.A,T.B,T.C,'r-')
view(-34, 14)
% Add title and axis labels
title('Title')
xlabel('A')
ylabel('B')
zlabel('C')

AV on 6 Dec 2019
Thank you very much. This seems to display multiple vectors for the multipe points. Is there a way to combine all into 1 overall 3d vector so there is just one line?
JESUS DAVID ARIZA ROYETH on 6 Dec 2019

AV on 9 Dec 2019
Thanks for helping that unfortunately created one vector connecting multiple points. Ideally I would like to generate one 3D vector arrow for all points in a 3d scatter. I have attached a diagram of one vector arrow added artificially to show an example of the desired end result.
Your help would be much appreciated. 