Plotting 3D points from numerous arrays
    조회 수: 9 (최근 30일)
  
       이전 댓글 표시
    
Hello all,
I have 210 arrays each one representing the x,y,z coordinates of a point (70 points). My arrays are named Point_1_x, Point_1_y, Point_1_z, etc.
I want to plot a 3D plot of the 70 points at a specific time (assume 20,1 cell in all arrays.
Is there a way to write a loop for the whole procedure with i ranging from 1 to 70 to create this plot as automatically as possible?
Thank you in advance.
채택된 답변
  Konstantinos Belivanis
 2014년 11월 7일
        댓글 수: 4
  Orion
      
 2014년 11월 7일
				this should work
t=20;
% init
X_Coords = zeros(70,1);
Y_Coords = zeros(70,1);
Z_Coords = zeros(70,1);
% loop on 70 files for the time t
for i=1:70    
    X_Coords(i) = eval(sprintf('Point_%d_x(t,1)',i));    
    Y_Coords(i) = eval(sprintf('Point_%d_y(t,1)',i));    
    Z_Coords(i) = eval(sprintf('Point_%d_z(t,1)',i));    
end
% draw
plot3(X_Coords,Y_Coords,Z_Coords,'+');
추가 답변 (2개)
  Orion
      
 2014년 11월 7일
        I don't have data to work with and see the validity of the result, but I guess you need something like
% create array by concatenating the vectors for each directions.
% assuming all Point_1_x, Point_1_y, Point_1_z, etc. are columns vectors.
AllXdat = [];
AllYdat = [];
AllZdat = [];
for i = 1:70
    AllXdat = [AllXdat eval(sprintf('Point_%d_x',i))];
    AllYdat = [AllYdat eval(sprintf('Point_%d_y',i))];
    AllZdat = [AllZdat eval(sprintf('Point_%d_z',i))]; 
end
% define the time you want to plot, and get the corresponding spatial values, 
% assuming the value fot t = 20 is at the 20th position in the vectors : Point_1_x(20),...
mytime  = 20;
XatTime = AllXdat(mytime,:);
YatTime = AllYdat(mytime,:);
ZatTime = AllZdat(mytime,:);
% plot at the desired time
plot3(XatTime,YatTime,ZatTime);
  Daniel
 2018년 6월 7일
        How can I use Surf to plot 3D graph from a text file. The text is attached and the auto-generated surface is also attached. My problem is drawing the attached auto-generated plot in MATLAB using the attached text file. Please, any help?
댓글 수: 0
참고 항목
카테고리
				Help Center 및 File Exchange에서 Annotations에 대해 자세히 알아보기
			
	Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!



