fprintf('Plotting Data ...\n')
data = load('ex1data1.txt');
x = data(:, 1); y = data(:, 2);
m = length(y); % number of training examples
% Plot Data
% Note: You have to complete the code in plotData.m
plotData(x, y);
fprintf('Program paused. Press enter to continue.\n');
pause;
这是函数plotData的matlab代码:
function plotData(x, y)
plotData (x,y,'rx', 'MarkerSize', 10);
ylabel ('Profit in $10,000s');
xlabel('Population of city in 10,000');
figure;
end
运行上面的代码后,它给出了以下错误:
plotData(第16行)plotData(x,y,'rx','MarkerSize',10)中的错误;
ex1(第49行)中的错误plotData(x,y);
答案 0 :(得分:3)
您正在调用函数plotData
中的函数plotData
,这在这里没有意义。
您想要的是按以下方式拨打plot
:
plot(x,y,'rx', 'MarkerSize', 10);
在函数内部。
因此将plotData
更改为:
function plotData(x, y)
figure %// Note that figure is called before the plot
plot(x,y,'rx', 'MarkerSize', 10);
ylabel ('Profit in $10,000s');
xlabel('Population of city in 10,000');
end
请注意,我在实际生成情节之前添加了对figure
的调用,这对我来说更有意义。