matlab二维图形的绘制(1)

概述

  matlab数学计算中有时候需要将函数通过图形更加直观的展示给用户的时候就需要使用到二维绘图。绘图常常采用的绘图命令便是 plot ,再添加一些辅助命令使得图形更加的形象直观。

  二维绘图中也包括针状图,阶梯图,散点图,条形图,饼图,直方图等等。

plot

  • plot(x,y) – 以x为横坐标,y为纵坐标,按照坐标(x,y)的有序排列绘制曲线。
  • plot(y) – y为一维实数数组,以1: n 为横坐标,y;为纵坐标,绘制曲线 (n 为y的长度)
  • plot(z) – z为一维复数数组,以横轴为实轴、纵轴为虚轴,在复平面上绘制real(zx),imag(zj))的有序集合的图形。
  • plot(A) – 绘制矩阵A的列对它的下标的图形。对于 m xn 的矩阵 A ,有n 个含有 m 个元素的数对或n条有m 个点的曲线,且这n条曲线均采用颜色监视器上不同的颜色绘制而成。
  • plot(x,A) – 绘制矩阵A对向量x的图形。对于 mxn 的矩阵A和长度为 m 的向量x绘制矩阵 A 的列对向量x的图形;如果x的长度为 n ,则绘制矩阵 A 的行对向量x的图形。向量。可以是行向量,也可以是列向量。
  • plot(A,x) – 对矩阵A绘制向量x的图形。对于一个 m xn 的矩阵A 和一个长度为 m的向量x,绘制矩阵 A 的列对向量x的图形;如果x的长度为 n ,则绘制矩阵 A 的行对向量x的图形。向量x 可以是行向量,也可以是列向量。
  • plot(A,B) – 绘制矩阵A的行对矩阵B的列的图形。对于A 和 B 都是 m xn 的矩阵将绘制n 条由 m 个有序对连成的曲线。
  • plot(x,y,str) – 用字符串str指定的颜色和线型绘制y对x的图形
  • plot(x1,y1,str1,x2,y2,str2) – 用字符串str1指定的颜色和线型绘制y1对x1的图形,用字符串str2指定的颜色和线型绘制y2对x2的图形…每组参数值均可以采用上述除复数值外的任何一种形式。strl,str2…可以省略,此时,MATLAB自动为每条曲线选择颜色和线型。
x1=-10:10;
y1=power(x1,2);
z=[1+1i,1+2i,2+3i,3+3i,4+2i,4+1i,3,2,1+1i];
A=[400     2     3   397   396     6     7   393   392    10    11   389   388    14    15   385   384    18    19   381;
    21   379   378    24    25   375   374    28    29   371   370    32    33   367   366    36    37   363   362    40;
    41   359   358    44    45   355   354    48    49   351   350    52    53   347   346    56    57   343   342    60;
   340    62    63   337   336    66    67   333   332    70    71   329   328    74    75   325   324    78    79   321;
   320    82    83   317   316    86    87   313   312    90    91   309   308    94    95   305   304    98    99   301;
   101   299   298   104   105   295   294   108   109   291   290   112   113   287   286   116   117   283   282   120;
   121   279   278   124   125   275   274   128   129   271   270   132   133   267   266   136   137   263   262   140;
   260   142   143   257   256   146   147   253   252   150   151   249   248   154   155   245   244   158   159   241;
   240   162   163   237   236   166   167   233   232   170   171   229   228   174   175   225   224   178   179   221;
   181   219   218   184   185   215   214   188   189   211   210   192   193   207   206   196   197   203   202   200;
   201   199   198   204   205   195   194   208   209   191   190   212   213   187   186   216   217   183   182   220;
   180   222   223   177   176   226   227   173   172   230   231   169   168   234   235   165   164   238   239   161;
   160   242   243   157   156   246   247   153   152   250   251   149   148   254   255   145   144   258   259   141;
   261   139   138   264   265   135   134   268   269   131   130   272   273   127   126   276   277   123   122   280;
   281   119   118   284   285   115   114   288   289   111   110   292   293   107   106   296   297   103   102   300;
   100   302   303    97    96   306   307    93    92   310   311    89    88   314   315    85    84   318   319    81;
    80   322   323    77    76   326   327    73    72   330   331    69    68   334   335    65    64   338   339    61;
   341    59    58   344   345    55    54   348   349    51    50   352   353    47    46   356   357    43    42   360;
   361    39    38   364   365    35    34   368   369    31    30   372   373    27    26   376   377    23    22   380;
    20   382   383    17    16   386   387    13    12   390   391     9     8   394   395     5     4   398   399     1];
x=[2,2,2,4,5,6,7,8,9,10,11,12,13,14,15 16 17 18 18 18];
y=[2,2,2,4,5,6,7,8,9,10,11,12,13,14,15 16 17 18 18 18];

B=[1:20;
    21:40;
    41:60;
    61:80;
    81:100;
    101:120;
    121:140;
    141:160;
    161:180;
    181:200;
    201:220
    221:240;
    241:260;
    261:280;
    281:300;
    301:320;
    321:340;
    341:360;
    361:380;
    381:400;
    ];

subplot(3,3,1);plot(x1,y1);grid on;
subplot(3,3,2);plot(y1); 
subplot(3,3,3);plot(z);
subplot(3,3,4);plot(A);grid on;
subplot(3,3,5);plot(x,A);
subplot(3,3,6);plot(A,y);
subplot(3,3,7);plot(A,B);
subplot(3,3,8);plot(x1,y1,'o');title("测试标题");xlabel("X");ylabel("Y");grid on;legend("中华人民共和国");
subplot(3,3,9);plot(x1,y1,'green','LineWidth',5); gtext("测试标注文档");

在这里插入图片描述

绘图辅助指令

1. subplot

  MATLAB允许用户在同一个图形窗口中同时绘制多幅相互独立的子图,这需要应用到subplot指令,其句法格式如下:

  • subplot(m,nk):将mxn幅子图中的第k幅图作为当前曲线的绘制图
  • subplot(position’,[left bottom width height]):在指定位置生成子图,并作为当前曲线的绘制图。
title(‘text’)

在图形窗口顶端的中间位置输出字符串“text”作为标题

xlabel(‘text’)

在x轴下的中间位置输出字符串“text作为标注。

ylabel(‘text’)

在y轴边上的中间位置输出字符串“text”作为标注。

zlabel(‘text’)

在z轴边上的中间位置输出字符串“text作为标注。

text(x,y,‘text’)

在图形窗口的(x,y)处输出字符串“text”。坐标x和y按照与所绘制图形相同的刻度给出。对于向量x和y,字符串“text”在(xiy)的位置上。如果text”是一个字符串向量,即一个字符矩阵,且与x、y有相同的行数,则第 i行的字符串将在图形窗口的(i;)位置上。

legend(str1,str2,…,pos)

在当前图形上输出图例,并用说明性字符串str1、str2等做标注。

grid

在MATLAB中,grid on命令可以在当前图形的单位标记处添加栅格;而gridoff命令则可以取消栅格的显示,若单独使用grid命令,则可以在on与off状态下交替转换即起到触发的作用。

二维特殊图形函数

函数名说明函数名说明
area填充绘图fplot函数绘制
bar条形图hist条形直方图
barh水平条形图paretoPareto 图
comet彗星图pie饼图
errorbar误差带图plotmatrix分放矩阵绘制
ezplot简单绘制函数图ribbon三维图形的二维条状显示
ezpolar简单绘制极坐标图scatter散点图
feather矢量图stem离放序列火柴杆状图
fill多边形填充stairs阶梯图
gplot拓扑图rose极坐标系下的柱状图
compass与 feather 功能类似的矢量图quiver向量场
  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值