Matlab中的绘图实例
如何使用plot函数、stem函数,对数据进行可视化呈现?
绘图是数据分析中不可或缺的环节,可视化数据可以更直观地观察数据分布趋势和规律,方便进一步分析和预测。在Matlab中,plot函数和stem函数是两个常用的绘图函数,可以方便地对数据进行可视化呈现。
一、plot函数
plot函数的语法格式为:
plot(x,y,LineSpec)
其中,x为横坐标向量,y为纵坐标向量,LineSpec是可选的线条格式参数,表示线条绘制的颜色、类型、宽度等属性。
1. 绘制简单折线图
例如,假设有如下数据:
x = 1:10;
y = [5,1,7,3,6,2,8,4,9,0];
可以通过以下代码绘制一条折线图:
plot(x,y)
该代码绘制了从(1,5)到(10,0)的一条折线,横坐标为x,纵坐标为y。折线图可以很好地表示数据的趋势和变化状况。
2. 添加线条格式参数
可以通过添加线条格式参数来修改线条的颜色、类型、宽度等属性来使图像更加美观。
例如:
plot(x,y,’r–o’)
代码中,’r’表示红色,’–‘表示虚线线型,’o’表示使用符号标记数据点。运行该代码将得到一条红色的带符号虚线的折线图。
3. 多条折线图绘制
可以在一张图上绘制多条折线图,可以使用hold函数,它可以使多条图像出现在同一张图中。
例如:
x = 1:10;
y1 = [5,1,7,3,6,2,8,4,9,0];
y2 = [2,6,1,8,5,3,9,4,7,0];
plot(x,y1,’r-o’);
hold on;
plot(x,y2,’g-*’);
代码中的hold on 保持当前图形窗口,并使得下面的图案可以被绘制到当前图中,不覆盖已经存在的图像。运行该代码,将会得到两条折线图,其中y1的线条为红色的实心线,y2的线条为绿色*符号的图线。
4. 添加轴标签和图例
使用xlabel, ylabel, title函数可以添加坐标轴的标签和图标题,方便观察数据分布。使用legend函数可以添加图例,可以在有多个折线图时区分不同的图形。
例如:
x = 1:10;
y1 = [5,1,7,3,6,2,8,4,9,0];
y2 = [2,6,1,8,5,3,9,4,7,0];
plot(x,y1,’r-o’,’LineWidth’,2);
hold on;
plot(x,y2,’g-*’,’LineWidth’,2);
xlabel(‘X’);
ylabel(‘Y’);
title(‘Plot Example’);
legend(‘line 1′,’line 2′);
代码中的xlabel, ylabel, title函数分别为设定X轴、Y轴坐标轴标签和图形标题。legend函数将line1和line2命名为图例,并出现在图形右上角。运行该程序将得到一个带有轴标签和图例的折线图。
二、stem函数
stem函数的语法格式为:
stem(x,y,LineSpec)
其中,x为横坐标向量,y为纵坐标向量,LineSpec是可选的线条格式参数,表示线条绘制的颜色、类型、宽度等属性。与plot函数不同的是,stem函数绘制的是离散点,而不是连续线条。通常用于表示离散信号和时域波形。
1. 绘制简单的离散信号
例如,假设有如下数据:
x = 1:10;
y = [5,1,7,3,6,2,8,4,9,0];
可以通过以下代码绘制离散点:
stem(x,y)
该程序绘制了从(1,5)到(10,0)的一系列离散点,横坐标为x,纵坐标为y。离散点可以更加直观地体现数据间隔和分布。
2. 添加线条格式参数
可以通过添加线条格式参数来修改线条的颜色、类型、宽度等属性,使图像更加美观。
例如:
stem(x,y,’r’)
代码中,’r’表示红色。运行该代码将得到一个红色的离散信号图。
3. 多个离散信号绘制
可以在同一张图中显示多个离散信号。对于stem函数,使用hold on函数和plot函数语法相同。
例如:
x = 1:10;
y1 = [5,1,7,3,6,2,8,4,9,0];
y2 = [2,6,1,8,5,3,9,4,7,0];
stem(x,y1,’r’);
hold on;
stem(x,y2,’g’);
代码中,使用hold on函数,并在两个stem函数中分别添加y1和y2数据绘图。运行该代码将得到两个离散信号。
4. 添加轴标签和图例
与plot函数相同,可以使用xlabel, ylabel, title函数来添加坐标轴标签和图形标题,使用legend函数添加图例。
例如:
x = 1:10;
y1 = [5,1,7,3,6,2,8,4,9,0];
y2 = [2,6,1,8,5,3,9,4,7,0];
stem(x,y1,’r’);
hold on;
stem(x,y2,’g’);
xlabel(‘X’);
ylabel(‘Y’);
title(‘Plot Example’);
legend(‘line 1′,’line 2’);
代码中利用xlabel, ylabel 和 title来设置坐标轴标签和图形标题。legend函数将line1和line2命名为图例,并出现在图形右上角。运行该程序将生成带有轴标签和图例的离散信号图。
总之,Matlab中的plot函数和stem函数可以帮助我们可视化数据,观察数据分布趋势和规律,更好的理解和分析数据。同时,我们也可以通过添加线条格式参数,绘制多条折线、离散信号等,同时添加轴标签和图例,使绘制的图形更加美观和直观。
2023年05月16日 10:26