How to plot each matrix in a cell in 3d plot ?

6 次查看(过去 30 天)
Let's say: Cell A with size of 1x100 cell:
A={1x100} cell
And the size each matrix in the cell A is like this:
{A}= {[A1] [A2] [A3] [A4] [A5]......... [A100] }
{A}= {[5000x3 double] [1000x3 double]......... [2222x3 double] }
Where the structure of matrix Ai is coordinate (x,y,z)
Example:
[A1]= [2 1 1 ------> coordinate of point 1
3 2 4
5 2 6
........
........
7 9 1] ------> coordinate of point 5000
How to plot all matrix (coordinate) of cell A in 1 figure in 3d graph? (if possible, please help me plot 1 matrix with 1 color)

采纳的回答

Akira Agata
Akira Agata 2017-9-6
I don't think it's better to plot 100 lines in one graph... But I believe the following code would be what you want to do. I hope this sample code can help you!
% Make 100 colors
color = jet(100);
% Sample data (1x100 cell array)
A = cell(1,100);
for kk = 1:numel(A)
z = 10*rand()+(0:pi/50:10*rand()*pi)';
x = 10*rand()*sin(z);
y = 10*rand()*cos(z);
A{kk} = [x,y,z];
end
% Plot them in one figure with different color
figure
hold on;
for kk = 1:numel(A)
plot3(A{kk}(:,1),A{kk}(:,2),A{kk}(:,3),...
'Color',color(kk,:));
end
view(3);
  5 个评论
ha ha
ha ha 2017-9-8
编辑:ha ha 2017-9-8
Thank so much,@ Akira Agata
One more question? If i want to use "color map" to show the color corresponding with the number of matrices, how can i do that? (e,g. i have 10 matrices (A1, A2, A3,..., A10), so the color bar will show 10 color , and also show 10 number from 1 to 10 corresponding with 10 colors)
Please see illustrated photo
Akira Agata
Akira Agata 2017-9-10
How about adding a "legend", instead of a "color bar," to the figure? When you add legend('show'); to the code, the output figure becomes like this.

请先登录,再进行评论。

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 2 次元および 3 次元プロット 的更多信息

标签

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!