Matlab笔记(二)

本文最后更新于:2021年7月11日 晚上

一、MATLAB作图

(一)曲线图

Matlab作图是通过描点、连线来实现的,故在画一个曲线图形之前,必须先取得该图形上的一系列的点的坐标(即x,y),然后将该点击的坐标传给MATLAB函数画图。 命令为: PLOT(X,Y,S) x,y是向量,分别表示点集的横纵坐标,S表示线的类型 S的类型:

1
2
3
4
5
6
7
8
9
10
11
12
13
y 黄色  
m 洋红
c 蓝绿色
r 红色
. 点
- 连线
。 圈
: 短虚线
x x-符号
-. 长短线
r 红色
+ 加号
-- 长虚线

不加s默认画实线:PLOT(x,y) 将多条线画在一起:PLOT(X,Y1,S1,X,Y2,S2,……,X,Yn,Sn)

(二)符号函数(显函数、隐函数和参数方程)画图

1.ezplot
  • ezplot(‘f(x)’,[a,b])

表示在a<x<b绘制显函数f=f(x)的函数图

  • ezplot(‘f(x,y)’,[xmin,xmax,ymin,ymax]) 表示在区间xmin<x<xmax和ymin<y<ymax绘制隐函数f(x,y)=0的函数图
  • ezplot(‘x(t)’,’y(t)’,[tmin,tmax]) 表示在区间tmin<t<tmax绘制参数方程,x=x(t),y=y(t)的函数图
  • fplot(‘fun’,lims) 表示绘制字符串fun指定的函数在Lims=[xmin,xmax]的图形
    • fun必须是M文件的函数名或是独立变量为x的字符串
    • fplot函数不能画参数方程和隐函数图形,但在一个图上可以画多个图形

(三)对数坐标

  • loglog(Y) 表示x,y坐标都是对数坐标系
  • semilogx(Y) 表示x坐标轴是对数坐标系
  • semilogy(…) 表示y坐标轴是对数坐标系
  • plotty 有两个y坐标轴,一个在左边,一个在右边

二、空间曲线

  • 一条曲线:plot3(x,y,z,s) x,y,z表示横纵坐标和函数值,s表示线的颜色和类型 其中x,y,z都是m*n的矩阵,其对应的每一列表示一条曲线
  • 多条曲线:plot3(x,y,z)

三、空间曲面

  • surf(x,y,z) x,y,z表示横纵坐标和函数值 画出数据点(x,y,z)表示的曲面
  • mesh(x,y,z) 生成网格线曲面
  • meshz(x,y,z) 生成网格线曲面,带高度z

四、处理图像

(一)在图形上加格栅、图例和标注

  • grid on/off 打开/关闭 网格背景在图像上
  • hh = xlabel(string) 在当前图形的x轴上加图例string
  • hh = ylabel(string) 在当前图形的y轴上加图例string
  • hh = zlabel(string) 在当前图形的z轴上加图例string
  • hh = title(string) 在当前图形的顶部加图例string
  • hh = gtex(string) 添加标注区别曲线

(二)定制坐标

  • Axis([xmin xmax ymin ymax zmin zmax])

定制图形坐标,分别表示x,y,z的最大和最小值

  • Axis auto

还原坐标轴到自动缺省值状态

(三)图形保持

  • hold on 保持当前图形,以便继续画图到当前图上
  • hold off 释放当前图形窗口
  • figure(h) 新建h窗口,激活图形使其可见,并把它置于其它图形之上

(四)分割窗口

  • h = subplot(marows,ncols,thisplot) 划分整个图形为marows x ncols大小的块(逐行对块进行访问)并激活第thisplot块,其后的作图语句将显示在该块上
  • subplot(mrows,ncols,thisplot) 激活一划分为Mrows x ncols块的屏幕中的第thisplot块,其后的作图语句将图形画在该块上
  • subplot(1,1,1) 将作图窗口返回非分割状态

(五)图像缩放

  • zoom on 为当前窗口打开缩放模式,单击鼠标左键,则在当前图形窗口中,以鼠标点中的点为中心的图形放大2倍;单击鼠标右键,则缩小两倍
  • zoom off 关闭缩放模式

(六)改变视角

  • view(a,b) 命令view(a,b) 改变视角到(a,b),a是方位角,b为仰角。缺省值为(-37.5,30)。
  • view([x,y,z]) view用空间矢量表示的,三个量只关心他们的比例,与数值大小无关,x轴view([1,0,0]),y轴view([0,1,0]),z轴view([0,0,1])。

本博客所有文章除特别声明外,均采用 CC BY-SA 4.0 协议 ,转载请注明出处!