关于MATLAB画图

设置基本线型和颜色

1
2
3
x=0:0.1:2;
y=2*x.^2-x;
plot(x,y);

以上MATLAB代码画的是曲线: y=2x^2-x
曲线图

设置线型
  • plot(x,y,’–’); // 画虚线
  • plot(x,y,’.’); // 画点
  • plot(x,y,’:’); // 画点线
  • plot(x,y,’o’); // 画圆圈
  • plot(x,y,’+’); // 画加号
  • plot(x,y,’x’); // 画叉
  • plot(x,y,’p’); // 画星号(空心五角星)
  • plot(x,y,’d’); // 画菱形
  • plot(x,y,’s’); // 画方块
  • plot(x,y,’*‘); // 画星号(*)
  • plot(x,y,’-‘); // 画实线
  • plot(x,y,’-.’); // 画点划线
  • ……
    以上列举了常用的一些线型,这些线型中部分还可以组合使用,就像最后一个点划线一样。
设置颜色(八种基本颜色)
  • plot(x,y,’r’); // 红色
  • plot(x,y,’b’); // 蓝色
  • plot(x,y,’g’); // 绿色
  • plot(x,y,’y’); // 黄色
  • plot(x,y,’m’); // 紫红色
  • plot(x,y,’c’); // 蓝绿色
  • plot(x,y,’w’); // 白色
  • plot(x,y,’k’); // 黑色
设置线条粗细
  • plot(x,y,’linewidth’,3);

类似的,还有标记点的边缘颜色(MarkerEdgeColor)、填充颜色(MarkerFaceColor)以及标记点的大小(MarkerSize)。

画平滑曲线

1.通过拟合来画平滑曲线
2.通过插值来画平滑曲线

1
2
3
4
5
6
7
8
9
10
clear all;clc;  
a=1:1:10;                                  % 横坐标   b=[2 4 8 10 16 20 30 36 50 80];            % 纵坐标   plot(a,b,'b');                           % 直接画图  
hold on; grid on;     
%%%% 第一种,画平滑曲线的画法  
c=polyfit(a,b,2);                         % 进行拟合,c为2次拟合后的系数  
d=polyval(c,a,1);                           % 拟合后,每一个横坐标对应的值即为d   
plot(a, d, 'r');                            % 拟合后的曲线   plot(a, b, '*');                            % 将每个点 用*画出来     
%%%% 第二种,画平滑曲线的方法   values = spcrv([[a(1) a a(end)];[b(1) b b(end)]],3);   plot(values(1,:),values(2,:), 'g');

平滑曲线图

根据大量离散点画出包络曲线(比如在画功率谱的时候)

1
2
3
4
5
// reshape函数即将矩阵PSD重新调整为d行N/D列的新矩阵
y=reshape(PSD,d,N/d); // PSD表示纵坐标,N表示采的点数,d表示每段的距离
y=max(y);
x=linspace(0,max(f),N/d); // f表示横坐标
// linspace()函数用于产生0,max(f)之间N/d个元素组成的一维数组

平滑曲线图

您的支持将鼓励我继续创作!