figure%打开一个图像窗口 subplot(2,1,1) plot(numa(step1+1:end),'k-') subplot(2,1,2) plot(y_pred,'b-')%黑色实线,点的形状为* hold on%继续画图 plot(output_test,'r--')%红色实线,点的形状为o hold off%停止画图 title('测试图')%标题 ylabel('类别')%Y轴名称 legend('测试值','实际值','Location','southeast')%标签 set(gca,'fontsize',12) set(gca,'YTick',0:1) set(gca,'YTickLabel',{'正常','异常'}) ylim([-0.2 1.2]) error1 = y_pred-output_test;%误差 figure plot(error1,'k-') title('测试误差图') set(gca,'fontsize',12) [MSE,RMSE,MBE,MAE ] =MSE_RMSE_MBE_MAE(output_test,y_pred); result_table = table; result_table.sim = y_pred'; result_table.true = output_test'; writetable(result_table,'./结果.csv')
时间: 2023-08-07 07:03:38 浏览: 41
这是一段 MATLAB 代码,用于绘制回归模型的测试结果和误差图,以及计算并输出回归模型的性能指标。代码功能及注释解释如下:
- `figure`:打开一个新的图像窗口。
- `subplot(2,1,1)`:将图像分成 2 行 1 列的网格,并将第一个子图指定为当前绘图区域。
- `plot(numa(step1+1:end),'k-')`:在第一个子图中绘制黑色实线,表示预测结果。
- `subplot(2,1,2)`:将图像分成 2 行 1 列的网格,并将第二个子图指定为当前绘图区域。
- `plot(y_pred,'b-')`:在第二个子图中绘制蓝色实线,表示预测结果。
- `hold on`:保持当前绘图区域,以便继续向其添加图形。
- `plot(output_test,'r--')`:在当前绘图区域中绘制红色虚线,表示真实结果。
- `hold off`:停止向当前绘图区域添加图形。
- `title('测试图')`:设置图像标题为“测试图”。
- `ylabel('类别')`:设置 Y 轴标签为“类别”。
- `legend('测试值','实际值','Location','southeast')`:设置图例,其中“测试值”和“实际值”分别表示预测结果和真实结果,“Location”指定图例位置,“southeast”表示图例位于右下角。
- `set(gca,'fontsize',12)`:设置当前绘图区域的字体大小为 12。
- `set(gca,'YTick',0:1)`:设置 Y 轴刻度值为 0 和 1。
- `set(gca,'YTickLabel',{'正常','异常'})`:将 Y 轴刻度标签设置为“正常”和“异常”。
- `ylim([-0.2 1.2])`:设置 Y 轴的显示范围为 -0.2 到 1.2。
- `error1 = y_pred-output_test`:计算预测结果和真实结果之间的误差。
- `figure`:打开一个新的图像窗口。
- `plot(error1,'k-')`:在当前绘图区域中绘制黑色实线,表示预测误差。
- `title('测试误差图')`:设置图像标题为“测试误差图”。
- `set(gca,'fontsize',12)`:设置当前绘图区域的字体大小为 12。
- `[MSE,RMSE,MBE,MAE ] =MSE_RMSE_MBE_MAE(output_test,y_pred)`:计算回归模型的均方误差、均方根误差、平均偏差和平均绝对误差。
- `result_table = table`:创建一个空的表格。
- `result_table.sim = y_pred'`:将预测结果添加到表格中,并将其命名为“sim”。
- `result_table.true = output_test'`:将真实结果添加到表格中,并将其命名为“true”。
- `writetable(result_table,'./结果.csv')`:将表格写入名为“结果.csv”的 CSV 文件中。