MATLAB: Plot() doesn’t work in .m file

curve fittingMATLABplotting

I'm slightly flustered: I just fitted a graph and typed plot() beneath to plot another graph, but Matlab gives error:
%% Fit: 'untitled fit 1'.
[xData, yData] = prepareCurveData( N, A );
% Set up fittype and options.
ft = fittype( 'poly6' );
% Fit model to data.
[fitresult, gof] = fit( xData, yData, ft );
% Plot fit with data.
figure( 'Name', 'untitled fit 1' );
h = plot( fitresult, xData, yData );
legend( h, 'A vs. N', 'untitled fit 1', 'Location', 'NorthEast', 'Interpreter', 'none' );
% Label axes
xlabel( 'N', 'Interpreter', 'none' );
ylabel( 'A', 'Interpreter', 'none' );
grid on
hold on
plot(x,y);
axis([-15 15 200 800])
Error in AmplitudeFit (line 36)
plot(x,y);
in command-window I can plot(x,y) without any issues.

Best Answer

Assuming that you have included the code for reading table into M and storing it in x and y before using plot(x,y), the error might be due to the character or string cell array resulted from the table. The plot function accepts numeric, categorical, datetime and duration datatypes. Refer this link to convert table variables containing characters or strings to categorical arrays.
Refer this link to plot categorical data.