Why is my "plot" function not working?

T = readtable('ELG3155_LAB3_part2_M_2V.xlsx', 'PreserveVariableNames', true);
x = T.("Time (ms)");
y = T.("Raw speed (mrad/s)");
grid on;
plot(x,y);
When i run this it says there is an error with my plot function, why?

2 件のコメント

Matt J
Matt J 2023 年 3 月 26 日
We can't run the code (because it's an image and because the data hasn't been provided)
William
William 2023 年 3 月 26 日
@Matt J there, sorry.

サインインしてコメントする。

 採用された回答

Star Strider
Star Strider 2023 年 3 月 26 日
編集済み: Star Strider 2023 年 3 月 26 日

0 投票

Use the str2double function on the last four variables.
EDIT — (26 Mar 2023 at 10:28)
T = readtable('https://www.mathworks.com/matlabcentral/answers/uploaded_files/1336464/ELG3155_LAB3_part2_M_2V.xlsx', 'VariableNamingRule','preserve');
VN = T.Properties.VariableNames;
x = T.("Time (ms)");
y = str2double(T.("Raw speed (mrad/s)"));
figure
plot(x,y)
xlabel(VN{1})
ylabel(VN{3})
grid on
.

2 件のコメント

William
William 2023 年 3 月 26 日
Thank you :)
Star Strider
Star Strider 2023 年 3 月 26 日
As always, my pleasure!

サインインしてコメントする。

その他の回答 (1 件)

Walter Roberson
Walter Roberson 2023 年 3 月 26 日

0 投票

The first row has time 00. That is text not numeric.
Looking at the left justification it looks to me as if the second column is text rather than numeric.

1 件のコメント

Walter Roberson
Walter Roberson 2023 年 3 月 26 日
I checked in Excel itself, and sure enough, the 00 gives a warning about "Number stored as text", and all of columns 2, 3, 4 report the same thing.
If you use readmatrix() then everything will be converted to numeric.
Note: with default options, the 00 0 0 0 row will be detected as being header and will be skipped.

サインインしてコメントする。

質問済み:

2023 年 3 月 26 日

コメント済み:

2023 年 3 月 26 日

Community Treasure Hunt

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

Start Hunting!

Translated by