MATLAB绘制多维m×n阶矩阵的折线图并显示变量名

2025-10-09 03:40:35

1、首先准备一个需要用于作多维多变量折线图的“多维多变量样本数据.xlsx”Excel表格,如下图所示。这里有8个变量,4组数据。

MATLAB绘制多维m×n阶矩阵的折线图并显示变量名

2、然后使用xlsread读取所建立的多维多变量样本数据表格,将将表格数据和变量名称都分别保存到MATLAB数值矩阵和细胞矩阵中,代码如下:

[dw_data,dw_name]=xlsread('多维多变量样本数据.xlsx');

%数据保存到dw_data中,变量名称保存到dw_name中。

运行结果查看工作区矩阵如下所示。

MATLAB绘制多维m×n阶矩阵的折线图并显示变量名

MATLAB绘制多维m×n阶矩阵的折线图并显示变量名

3、然后使用size函数计算多维多变量样本数据的大小程序如下:

[m,n]=size(dw_data);

m*n阶矩阵,运行结果如下。m等于4行,n等于8列。

MATLAB绘制多维m×n阶矩阵的折线图并显示变量名

4、接下来作多维多变量图,使用plot函数,每次取一组数据画出折线图然后保持,多次循环依次把所有折线画出即可。

程序如下:

figure(1);

subplot(2,2,1);

for i=1:m

plot(dw_data(i,:))

hold on;

end

其中subplot是指定在figure中位置和划分图数量,(2,2,1)代表划分了4个作图区间,在第一个作图区间作图。

作出的多维多变量折线图如下图所示,很难被理解,需进一步修改和注释多维多变量折线图以帮助理解。

MATLAB绘制多维m×n阶矩阵的折线图并显示变量名

5、接下来修改横坐标为多维多变量数组的变量名称。

程序如下:

set(gca, 'XTick', [1:n])    % X坐标轴刻度数据点位置

set(gca, 'XTickLabels', {dw_name{:,1:n}})

set(gca,'XTickLabelRotation',45)

程序说明:第一行是更改刻度为实际点数,第二行是将点数更换成变量的名称,使用前面保存的dw_name替换即可。第三行是调节变量名字的显示角度,修改数字45即可更改文字旋转角度。45是旋转45度。

运行结果如下。可以发现比前图要好理解一点了。

MATLAB绘制多维m×n阶矩阵的折线图并显示变量名

6、继续为折线图添加横坐标和纵坐标标签以及标题和显示网格。

程序如下:

xlabel('变量');

ylabel('数值');

title('多维多变量样本数据折线图');

grid on

运行结果如下。这样易于理解的多维多变量样本数据折线图绘制完毕。

MATLAB绘制多维m×n阶矩阵的折线图并显示变量名

7、完整的“MATLAB绘制多维多变量m×n阶数据矩阵的折线图并且在横坐标显示变量名称”代码及截图如下所示:

[dw_data,dw_name]=xlsread('多维多变量样本数据.xlsx');

[m,n]=size(dw_data);

figure(1);

subplot(2,2,1);

for i=1:m

plot(dw_data(i,:))

hold on;

end

set(gca, 'XTick', [1:n])    % X坐标轴刻度数据点位置

set(gca, 'XTickLabels', {dw_name{:,1:n}})

set(gca,'XTickLabelRotation',45)

xlabel('变量');

ylabel('数值');

title('多维多变量样本数据折线图');

grid on

MATLAB绘制多维m×n阶矩阵的折线图并显示变量名

声明:本网站引用、摘录或转载内容仅供网站访问者交流或参考,不代表本站立场,如存在版权或非法内容,请联系站长删除,联系邮箱:site.kefu@qq.com。
猜你喜欢