connecting points in scatter3 plot?

30 ビュー (過去 30 日間)
Sanjoy Basak
Sanjoy Basak 2014 年 11 月 4 日
回答済み: Sanjoy Basak 2014 年 11 月 4 日
hi there. I am trying to connect points in a scatter3 plot. i tried using line, but that is applicable for 2D plot. but the data contains 3 dimensions. can anyone please tell me which command should i use after the line to connect points? thanks in advance.
scatter3(objlist.r_c(1,1,:),objlist.r_c(2,1,:),objlist.r_c(3,1,:))

採用された回答

Matt Tearle
Matt Tearle 2014 年 11 月 4 日
OK, now I understand the problem. The issue isn't that the data is representing 3-dimensional points, but that it's stored in a 3-D array. So you need to squeeze or reshape your data into vectors:
x = objlist.r_c(1,1,:);
x = x(:);
y = objlist.r_c(2,1,:);
y = y(:);
z = objlist.r_c(3,1,:);
z = z(:);
scatter3(x,y,z);
line(x,y,z)
% or plot3(x,y,z,'o-')
Or
x = squeeze(objlist.r_c(1,1,:));
y = squeeze(objlist.r_c(2,1,:));
z = squeeze(objlist.r_c(3,1,:));
scatter3(x,y,z);
line(x,y,z)

その他の回答 (3 件)

Matt Tearle
Matt Tearle 2014 年 11 月 4 日
編集済み: Matt Tearle 2014 年 11 月 4 日
What about plot3?
plot3(rand(5,1),rand(5,1),rand(5,1),'o-')
But I also don't understand what the problem is with line. This does the same as plot3:
x = rand(5,1);
y = rand(5,1);
z = rand(5,1);
scatter3(x,y,z)
line(x,y,z)

Sanjoy Basak
Sanjoy Basak 2014 年 11 月 4 日
my data has 3 dimensions as you can see here..
(objlist.r_c(1,1,:) there is a z dimension here.. line only deals with 2 dimension points..line is not working..can you tell me any other way or any other command to join the points? no just a straight line, something else like spline would also be fine..

Sanjoy Basak
Sanjoy Basak 2014 年 11 月 4 日
thank you very much...now it is working fine..:)

カテゴリ

Help Center および File ExchangeChebyshev についてさらに検索

タグ

Community Treasure Hunt

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

Start Hunting!

Translated by