目录
4.1二维曲线
plot函数
- plot(x,y) 参数为长度相等的向量
- plot(x,y) 当y为矩阵时,会生成和行数相等或列数相等(看x和y的哪一个维度大小相等)的矩阵
- plot(x,y) 当x,y为同型矩阵,对应列元素为横纵坐标分别绘制曲线
- plot(x) 折线的纵坐标为x的值,当x为复数向量时,分别以该向量元素实部虚部为横纵坐标绘图
- plot(x1,y1,x2,y2,...,xn,yn) 每一个向量对构成一组数据点的横纵坐标
- plot(x,y,选项) 选项可以控制线型,颜色,数据点形状
fplot函数
- fplot(f [,lims] [,选项]) f代表一个函数,通常为函数句柄形式.lims为x中的取值范围,二元向量[xmin, xmax]描述,默认值为[-5,5].选项定义与plot函数相同.
- fplot(funx, funy [,lims] [,选项]) 前两个参数,常用来参数方程绘图
4.2绘制图形的辅助操作
图形标注
- title(图形添加标题) 图形标题中可以使用LaTex格式控制符;可以控制title的属性名属性值;'Color'用于设置图形名称文本的颜色;'FontSize':用于设置标题文字的字号
- xlabel(x轴说明)
- ylabel(y轴说明)
- text(x,y,图形说明) 可对图像中的点进行标注,
- legend(图例1,图例2,...)
坐标控制
- axis([xmin,xmax,ymin,ymax,zmin,zmax]) 控制坐标区的范围
- axis equal 纵横坐标轴采用等长刻度
- axis square 长生正方形坐标系(默认为矩形)
- axis auto 使用缺省设置
- axis off 取消坐标轴
- axis on 显示坐标轴
- grid on/off 网格控制
- box on/off 边框控制
图像保持
- hold on 图像保持
- hold off 取消图像保持
- hold 两种状态切换
图形窗口分割
- subplot(m,n,p) 分割为m*n的图像区,按行序号为p的区为活动区
4.3其它形式的二维曲线
其他坐标系下的二维曲线图
- semiliogx(x1,y1 [,选项1],x2,y2 [,选项2],...) 半对数x坐标
- semiliogy(x1,y1 [,选项1],x2,y2 [,选项2],...) 半对数y坐标
- loglog(x1,y1 [,选项1],x2,y2 [,选项2],...) 全对数坐标
- polar(theta, rho [,选项]) 参数1为极角,参数2为极径,选项的内容与plot函数相同
统计图
- 条形类图形 bar(y [,style]) 参数y为数据,选项style用于指定分组排列模式
"grouped":簇状分组 "stacked":堆积分组
- 条形类图形 bar(x, y [,style]) 参数x为横坐标,y为数据,选项style用于指定分组排列模式
- 直方图 hist(y [,x]) 参数为要统计的数据,对数据进行统计计数
- 极坐标系直方图 rose(theta [,x]) 参数为要统计的角度
- 面积类图形 pie(x [,explpde]) 参数x为存储待统计数据,选项explode控制图块的显示模式
- 散点图 scatter(x, y, [,选项] [,'filled']) x,y用于定位数据点,选项用于指定线型,颜色,数据点标记符号
- 阶梯图 stairs
- 杆图 stem
矢量图形
- 罗盘图 compass
- 羽毛图 feather
- 箭头图 quiver([x, y,] u, v) 其中(x,y)为矢量起点,(u,v)为矢量终点
4.4三维曲线
plot3
- plot3(x, y, z) 其中参数x,y,z组成一组曲线的坐标
- plot3(X, Y, Z) 参数X,Y,Z是同型矩阵时,按列绘图. 存在向量时,行向量长度要和矩阵列数相同;列向量的长度要和矩阵行数相同
- 含有多组输入参数时,每一组向量构成一组数据点的坐标
- plot3(x, y, z, 选项) 用于指定曲线的线形,颜色和数据点标记
fplot3
- 用于参数方程的绘图
- fplot3(funx, funy, funz [,tlims]) 其中funx,funy,funz代表定义x,y,z坐标的函数.通常使用函数句柄的方式.tlims为参数函数自变量的取值范围,用二元α向量[tmin, tmax] 描述,默认为[-5, 5]
- 也可以添加选项
4.5三维曲面
- 通常在MATLAB中生成三维曲面,先要生成网格数据,之后再绘制三维曲面的mesh函数和surf函数
平面网格数据的生成
- [X,Y]=meshgrid(x,y) 其中x,y为向量,X,Y为矩阵
- mesh(x,y,z [,c]) x,y为网格坐标矩阵,z是网格点上的高度矩阵,,c用于指定在不同高度下的曲面颜色
- surf(x,y,z [,c])
- 当x,y省略时,z矩阵的第二维下标作为x轴坐标,z矩阵的第1维下表作为y轴坐标
- meshc 带等高线的三维网格曲面函数
- meshz 带底座的三维网格曲面函数
- surfc 具有等高线的曲面函数
- surfl 具有光照效果的曲面函数
标准三维曲面
- [x, y, z] = sphere(n) 产生三个n+1阶的矩阵,可形成半径为1的球
- [x, y, z] = cylinder(R, n) R是一个向量,存放等间隔高度上的半径,当其为标量时,生成一个圆柱面
- peaks函数用来生成多峰矩阵 peaks(n) n为等分的份数
- fsurf(funx, funy, funz, [,uvlims]) 前三个参数代表三个坐标的函数,常用函数句柄的方式,第四个参数为参数自变量的取值范围,用四元向量[umin, umax, vmin, vmax] 描述,默认为[-5,5,-5,5]
- fmesh(funx, funy, funz, [,uvlims])
4.6图形修饰处理
视点处理
- 视点处理分为两个参数:方位角和仰角 view(az,el)
- view(x,y,z) 设置视点位置
- view(2) 设置从二维图观察
- view(3) 设置从三维图观察
色彩处理
- 颜色的向量表示[R G B]
- 可以使用colormap cmapname 对图像颜色进行指定
- 三维图形表面的着色
- shading faceted:将每个网格片用其对应高度进行着色,网格线是黑色的
- shading flat:将每个网格片用同一颜色着色,且网格线也用相应的颜色
- shading imterp:网格片内采用插值处理,得出的表面图显得最光滑
剪裁处理
- 将对应区域赋值为NaN即可完成剪裁处理
[X, Y, Z] = sphere(60);
p = Z>0.5;
Z(p) = NaN;
surf(X, Y, Z)
axis([-1, 1, -1, 1, -1, 1])
axis equal
view(-45, 20)
4.7交互式绘图工具
- 绘图选项卡进行绘图
- 绘图工具:plottools命令启动绘图工具
- 图形选项版可以添加子图,变量面板可以选择变量,注释面板可以添加标注