Very beginner question: plot excel via scatter3d but getting error

조회 수: 1 (최근 30일)
vapeur
vapeur 2017년 5월 21일
댓글: Star Strider 2017년 5월 21일
Hi there, I've tried to plot a set of data (188 points from a table 188*3) using scatter3d, and codes are below.
x=data01(:,1);
y=data01(:,2);
z=data01(:,3);
scatter3(x,y,z);
and my x value is a list of 188 numbers of x-coordinate(purely number), and it is a table with 188*1.
It is very simple, but I continued got error saying 'input arguments must be numeric, datetime, duration or categorical'. I cannot find solution...and it kills half of my day..would somebody like to help? Thanks.

채택된 답변

Walter Roberson
Walter Roberson 2017년 5월 21일
Because your data01 is a table, you need to extract the content of the table.
x=data01{:,1};
y=data01{:,2};
z=data01{:,3};
scatter3(x,y,z);
Or if you know the variable names you could use them. For example if the variable names in the table are Lat, Lon, Alt, then you could code
x = data01.Lat;
y = data01.Lon;
z = data01.Alt;
scatter3(x,y,z);
  댓글 수: 1
vapeur
vapeur 2017년 5월 21일
Thanks! I just knew from you that the curly braces can do what parenthesis cannot..

댓글을 달려면 로그인하십시오.

추가 답변 (1개)

Star Strider
Star Strider 2017년 5월 21일
You need to use cell array addressing.
This works:
figure(1)
scatter3(data01{:,1}, data01{:,2}, data01{:,3})
Note the curly braces ‘{}’ denoting cell array addressing.

카테고리

Help CenterFile Exchange에서 Bar Plots에 대해 자세히 알아보기

태그

Community Treasure Hunt

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

Start Hunting!

Translated by