您的位置:

如何使用MATLAB画折线图

一、准备工作

在开始绘制MATLAB折线图之前,需要先准备好数据。通常,折线图用于显示随时间或某种变量而变化的一组数据。这些数据可以来自于各种来源,例如实验数据、温度记录或股票价格。

在本示例中,我们将使用自带的“考试成绩”数据集。该数据集包括数学、英语和历史成绩,每个科目都有10个学生的数据。

load examgrades.mat
plot(examgrades)

二、基本折线图

最基本的MATLAB折线图可以通过一组X和Y坐标数据来绘制。在下面的示例中,我们将创建一个简单的折线图,其中X坐标是0到10之间的数字,Y坐标是相应的平方。

x = 0:0.1:10;
y = x.^2;
plot(x,y)

三、多条曲线的折线图

有时我们需要在同一张图表上绘制多条曲线。例如,在本示例中,我们将在同一个坐标系中绘制三个不同的曲线,表示数学、英语和历史成绩。

plot(examgrades(:,1),'-o','LineWidth',2,'MarkerSize',8)
hold on
plot(examgrades(:,2),'-^','LineWidth',2,'MarkerSize',8)
plot(examgrades(:,3),'-*','LineWidth',2,'MarkerSize',8)
hold off

四、可视化自定义

除了使用默认配置之外,MATLAB还允许用户自定义呈现外观。例如,在下面的示例中,我们将更改线条颜色、线条宽度和坐标轴标签的字体。

x = 0:0.1:10;
y = x.^2;
plot(x,y,'-','Color','#0072BD','LineWidth',2)
xlabel('X轴','FontSize',14)
ylabel('Y轴','FontSize',14)
title('折线图示例','FontSize',16)
set(gca,'FontSize',12)

五、子图(subplot)绘制多个图像

有时,我们需要在同一个图表中绘制多个不同类型或不同数据的图像。在MATLAB中,可以使用subplot函数轻松创建多个子图。

x = 0:0.1:10;
y1 = x.^2;
y2 = sin(x);
y3 = exp(-x);
subplot(3,1,1)
plot(x,y1)
title('子图1')
subplot(3,1,2)
plot(x,y2)
title('子图2')
subplot(3,1,3)
plot(x,y3)
title('子图3')

六、填充区域

使用MATLAB,我们还可以在折线图中填充区域。这可以帮助强调特定的数据范围或区域。

x = 0:0.1:10;
y1 = x.^2;
y2 = sin(x);
fill([x,fliplr(x)],[y1,fliplr(y2)],'g')
alpha(0.2)