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 Kommentare

Matt J
Matt J am 26 Mär. 2023
We can't run the code (because it's an image and because the data hasn't been provided)
William
William am 26 Mär. 2023
@Matt J there, sorry.

Melden Sie sich an, um zu kommentieren.

 Akzeptierte Antwort

Star Strider
Star Strider am 26 Mär. 2023
Bearbeitet: Star Strider am 26 Mär. 2023

0 Stimmen

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 Kommentare

William
William am 26 Mär. 2023
Thank you :)
Star Strider
Star Strider am 26 Mär. 2023
As always, my pleasure!

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Walter Roberson
Walter Roberson am 26 Mär. 2023

0 Stimmen

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 Kommentar

Walter Roberson
Walter Roberson am 26 Mär. 2023
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.

Melden Sie sich an, um zu kommentieren.

Community Treasure Hunt

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

Start Hunting!

Translated by