最近做的项目涉及1个非线性控制系统,无法直接建立数学模型,试图通过大数据来查找不同变量之间的关系,但是大量的变量,如果再有大量csv文件或xlsx文件的话,找出不同变量之间的关系更是困难,于是想着用MATLAB的subplot函数做个小程序。废话不多说,附源码。
第一段是单个变量逐一生成随时间变化曲线的,我电脑有分屏,配合MATLAB图窗的“查看—属性编辑器”,把所有曲线放到一个界面上,贼爽。
<plot.m>
clear;
clc;
file='E:\Test_FuzzPID\MatLab_FuzzyPID\2022.4.22-2022.5.9.xlsx';
[data,name]=xlsread(file);
[m,n]=size(name);
C=1; %name比data多了第1列
%—————— 开始:批量绘制单个变量曲线图 ——————%
NumLinePlot=7; %每张图设置7个变量
NumFigure=6; %依次画6张图
for j=1:NumFigure
figure(j); % define figure
for i=1:NumLinePlot
t1=name(1);
t2='-';
t3=name(1,(j-1)*NumLinePlot+i+C+1);
subplot(NumLinePlot,1,i); % subplot(x,y,n)x表示显示的行数,y表示列数,n表示第几幅图片
plot(data(:,(j-1)*NumLinePl