plot 3D
1 次查看(过去 30 天)
显示 更早的评论
hi there. let's say that i have 3 matrixes. A=[1:10], B=[1:10] and C=[1:10]. I also have a time line. tim=1:1/2:10 . Let's say that if you plot these matrixes with tim you can see how a particle is moving. (assuming that the 3 matrixes describes the movement of a particle). Can i do this in 3D ? for the different times to see where is the particle ? Thanks
0 个评论
回答(3 个)
Walter Roberson
2011-6-14
There is plot3d(x,y,z). However, you are requesting a 4 dimensional plot (3 coordinates plus time), and there are no 4 dimensional plotting routines.
I note your tim vector has twice the number of values that A, B, and C does, and that confuses me as to what you want. If all of them were the same length, I would expect that you meant that the particle had position [A(K), B(K), C(K)] at time tim(K)
In order to display 4 dimensions of data simultaneously, you will need to encode one of the dimensions as either color or transparency. Color is easier.
I suggest that as a first approximation, you consider using scatter3(), coding the spacial dimension as X Y Z, and coding the time in either the color or dot-size parameter.
2 个评论
Teja Muppirala
2011-6-15
A = interpft(rand(1,10),1001);
B = interpft(rand(1,10),1001);
C = interpft(rand(1,10),1001);
t = 0:0.001:1;
figure
h = plot3(nan,nan,nan,'ro');
axis equal vis3d
box on
for n = 1:numel(t)
set(h,{'Xdata','Ydata','Zdata'},{A(n) B(n) C(n)});
title(t(n));
drawnow;
end
0 个评论
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Graphics Performance 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!