MATLAB画图出错,运行到hold on停止

代码如下:
x=[1,2,3,4,5];
y=[2.3,4,5.8,5.4,6.8];
subplot(2,2,1)
plot(x,y,'*r')
hold on
p1=polyfit(x,y,1);
Y1=polyval(p1,x);
plot(x,Y1,':k')
hold off
subplot(2,2,2)
plot(x,y,'*r')
hold on
p2=polyfit(x,y,2);
Y2=polyval(p2,x);
plot(x,Y2,':k')
hold off
在画图时出错
调用 "ishold" 时,未对输出参数 "holdstate" (可能还包括其他参数)赋值。

出错 ab2 (line 4)
plot(x,y,'*r')
没明白到底是什么问题

你好,请在画图之前清除原先的变量和图:

clc;clear
figure(100); clf
x=[1,2,3,4,5];
y=[2.3,4,5.8,5.4,6.8];
subplot(2,2,1)
plot(x,y,'*r')
hold on
p1=polyfit(x,y,1);
Y1=polyval(p1,x);
plot(x,Y1,':k')
hold off
subplot(2,2,2)
plot(x,y,'*r')
hold on
p2=polyfit(x,y,2);
Y2=polyval(p2,x);
plot(x,Y2,':k')
hold off

img

这样就不会有什么冲突啦