快速入门matlab,系统地整理一遍,如何你和我一样是一个新手,那么此文很适合你;


文章目录

  • 1 前言
  • 2 plot
  • 2.1 显示正弦波
  • 2.2 修改颜色
  • 2.3 修改点的形状
  • 2.4 修改线的形状
  • 2.5 多个参数修改
  • 3 subplot
  • 3.1 2行1列
  • 3.2 1行2列
  • 4 plot3
  • 5 title
  • 6 legend
  • 7 at last


1 前言

如果你是和我一样的小白,强烈推荐看看这里,需要合理地利用官方的文档,通常我觉得官方文档是最好的,没有之一,在命令终端输入help plot,可以看到详细的帮助文档;具体如下;

>> help plot
 plot   Linear plot. 
    plot(X,Y) plots vector Y versus vector X. If X or Y is a matrix,
    then the vector is plotted versus the rows or columns of the matrix,
    whichever line up.  If X is a scalar and Y is a vector, disconnected
    line objects are created and plotted as discrete points vertically at
    X.
 
    plot(Y) plots the columns of Y versus their index.
    If Y is complex, plot(Y) is equivalent to plot(real(Y),imag(Y)).
    In all other uses of plot, the imaginary part is ignored.
 
    Various line types, plot symbols and colors may be obtained with
    plot(X,Y,S) where S is a character string made from one element
    from any or all the following 3 columns:
 
           b     blue          .     point              -     solid
           g     green         o     circle             :     dotted
           r     red           x     x-mark             -.    dashdot 
           c     cyan          +     plus               --    dashed   
           m     magenta       *     star             (none)  no line
           y     yellow        s     square
           k     black         d     diamond
           w     white         v     triangle (down)
                               ^     triangle (up)
                               <     triangle (left)
                               >     triangle (right)
                               p     pentagram
                               h     hexagram
                          
    For example, plot(X,Y,'c+:') plots a cyan dotted line with a plus 
    at each data point; plot(X,Y,'bd') plots blue diamond at each data 
    point but does not draw any line.
 
    plot(X1,Y1,S1,X2,Y2,S2,X3,Y3,S3,...) combines the plots defined by
    the (X,Y,S) triples, where the X's and Y's are vectors or matrices 
    and the S's are strings.  
 
    For example, plot(X,Y,'y-',X,Y,'go') plots the data twice, with a
    solid yellow line interpolating green circles at the data points.
 
    The plot command, if no color is specified, makes automatic use of
    the colors specified by the axes ColorOrder property.  By default,
    plot cycles through the colors in the ColorOrder property.  For
    monochrome systems, plot cycles over the axes LineStyleOrder property.
 
    Note that RGB colors in the ColorOrder property may differ from
    similarly-named colors in the (X,Y,S) triples.  For example, the 
    second axes ColorOrder property is medium green with RGB [0 .5 0],
    while plot(X,Y,'g') plots a green line with RGB [0 1 0].
 
    If you do not specify a marker type, plot uses no marker. 
    If you do not specify a line style, plot uses a solid line.
 
    plot(AX,...) plots into the axes with handle AX.
 
    plot returns a column vector of handles to lineseries objects, one
    handle per plotted line. 
 
    The X,Y pairs, or X,Y,S triples, can be followed by 
    parameter/value pairs to specify additional properties 
    of the lines. For example, plot(X,Y,'LineWidth',2,'Color',[.6 0 0]) 
    will create a plot with a dark red line width of 2 points.
 
    Example
       x = -pi:pi/10:pi;
       y = tan(sin(x)) - sin(tan(x));
       plot(x,y,'--rs','LineWidth',2,...
                       'MarkerEdgeColor','k',...
                       'MarkerFaceColor','g',...
                       'MarkerSize',10)

plot相关的函数还有 plottools, semilogx, semilogy, loglog, plotyy, plot3, grid,title, xlabel, ylabel, axis, axes, hold, legend, subplot, scatter.

2 plot

2.1 显示正弦波

显示一个简单的正弦函数;

x=0:2*pi/100:2*pi;
y=sin(x);
plot(x,y);

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_plot

2.2 修改颜色

参数

颜色

b

blue

g

green

r

red

c

cyan

m

magenta

y

yellow

k

black

w

white

下面修改为红色:

x=0:2*pi/100:2*pi;
y=sin(x);
plot(x,y,'r');

结果如下:

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_绘图_02

2.3 修改点的形状

参数

形状

图标

-

solid

o

circle

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_matlab_03

x

x-mark

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_matlab_04

+

plus

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_绘图_05

*

star

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_正弦波_06

s

square

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_正弦波_07

d

diamond

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_正弦波_08

v

triangle (down)

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_matlab_09

^

triangle (up)

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_matlab_10

<

triangle (left)

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_plot_11

>

triangle (right)

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_正弦波_12

p

pentagram

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_matlab_13

h

hexagram

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_正弦波_14

将点形状显示为六边形

x=0:2*pi/20:2*pi;
y=sin(x);
plot(x,y,'h','MarkerSize',10);

结果如下:

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_plot_15


相关参数:

  • MarkerEdgeColor:点边框颜色;
  • MarkerFaceColor:点表面颜色;
  • MarkerSize:点的大小;

2.4 修改线的形状

符号

形状

:

dotted

-.

dashdot

--

dashed

x=0:2*pi/20:2*pi;
y=sin(x);
plot(x,y,':','LineWidth',3);

LineWidth的参数为线宽;

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_ci_16

x=0:2*pi/20:2*pi;
y=sin(x);
plot(x,y,'-.','LineWidth',3);

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_正弦波_17

x=0:2*pi/20:2*pi;
y=sin(x);
plot(x,y,'--','LineWidth',3);

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_plot_18

2.5 多个参数修改

下面修改多个参数属性显示一下正弦波;

x = 0:2*pi/100:2*pi;
y = sin(x);
plot(x,y,'--rs','LineWidth',2,...
                'MarkerEdgeColor','k',...
                'MarkerFaceColor','g',...
                'MarkerSize',10);

结果如下:

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_绘图_19

3 subplot

subplot的使用方法如下:

subplot Create axes in tiled positions.
    H = subplot(m,n,p), or subplot(mnp), breaks the Figure window
    into an m-by-n matrix of small axes, selects the p-th axes for
    the current plot, and returns the axes handle.  The axes are
    counted along the top row of the Figure window, then the second
    row, etc.  For example,
 
        subplot(2,1,1), PLOT(income)
        subplot(2,1,2), PLOT(outgo)

通俗的讲:
subplot(行,列,index)

注意:plot函数要在subplot表明位置之后再调用。

3.1 2行1列

x=0:2*pi/20:2*pi;
y=sin(x);
subplot(2,1,1);
plot(x,y,'y','LineWidth',3);
subplot(2,1,2);
plot(x,y,'g','LineWidth',3);

需要将多个波形显示在同一张图中;

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_ci_20

3.2 1行2列

x=0:2*pi/20:2*pi;
y=sin(x);
subplot(1,2,1);
plot(x,y,'y','LineWidth',3);
subplot(1,2,2);
plot(x,y,'g','LineWidth',3);

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_正弦波_21

4 plot3

t = 0:pi/50:10*pi;
 plot3(sin(t),cos(t),t);

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_matlab_22

5 title

  • title:图的标题;
  • xlabel:x轴标题;
  • ylabel:y轴标题;
    指定plot的标题,需要在plot调用之后在调用titlexlabelylabel
x=0:2*pi/20:2*pi;
y=sin(x);

subplot(1,2,1);

plot(x,y,'y','LineWidth',3);
title('yellow');
xlabel('yellow-x');
ylabel('yellow-y');
subplot(1,2,2);
plot(x,y,'g','LineWidth',3);
title('green');
xlabel('green-x');
ylabel('green-y');

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_plot_23

6 legend

x = 0:.2:12;
plot(x,besselj(1,x),x,besselj(2,x),x,besselj(3,x));
legend('First','Second','Third','Location','NorthEastOutside')

b = bar(rand(10,5),'stacked'); colormap(summer); hold on
x = plot(1:10,5*rand(10,1),'marker','square','markersize',12,...
         'markeredgecolor','y','markerfacecolor',[.6 0 .6],...
         'linestyle','-','color','r','linewidth',2); hold off
legend([b,x],'Carrots','Peas','Peppers','Green Beans',...
          'Cucumbers','Eggplant')

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_ci_24


这是官方的demo,比较复杂;

x=0:2*pi/20:2*pi;
y=sin(x);

plot(x,y,':','LineWidth',3);
legend('test1');

python 如何绘制MATLAB绘制pr曲线 matlab怎么用plot画函数_绘图_25


legend需要在plot之后调用,用于依次解释第一个plot的波形,如果一个plot里显示了两个波形,那legen中字符串也需要设置两个,分别依次对应plot中的波形;

7 at last

比较简单,matplotlib的功能和这个比较类似,总体来说,作为一个和博主一样的新手,要多看官方的help文档,然后平时使用的过程中慢慢就熟悉了,最后要多总结。


作者能力有限,文中难免有错误和纰漏之处,请大佬们不吝赐教