MATLAB之图形绘制

1、二维图形绘制

基本步骤:
1 )数据准备。主要工作是产生自变量采样向量,计算相应的函数值向量。
(2)选定图形窗口及子图位置。在默认情况下 MATLAB 系统绘制的图形为 figure.1、 figure.2……
(3)调用绘图函数绘制图形,例如 plot 函数。
(4)设置坐标轴的范围、刻度及坐标网格。
(5)利用对象属性值或者图形窗口工具栏设置线型、标记类型及其大小等。
(6)添加图形注释,例如图名、坐标名称、图例、文字说明等。
(7)图形的导出与打印。

1.1、plot指令

   该命令可以带有不同数目的参数。最简单的形式就是将数据传递给plot ,但是线条的类型和颜色可以通过使用字符串来指定,这里用 str 表示。线条的默认类型是实线型。
表1:plot指令的使用
序号使用方法说明
1
plot(x,y)
x 为横坐标, y 为纵坐标,按照坐标 ( x j , y j ) 的有序排列绘制曲线
2
plot(y)
其中 y 为一维实数数组,以 1: n 为横坐标, y j 为纵坐标,绘制曲线( n y 的长度)
3
plot(z)
其中 z 为一维复数数组,以横轴为实轴,纵轴为虚轴,在复平面上绘制 (real(z j ),imag(z j )) 的有
序集合的图形。
4
plot(A)
绘制矩阵 A 的列对它的下标的图形。对于 m × n 的矩阵 A ,有 n 个含有 m 个元素的数对,或是 n 条有m 个点的曲线,且这 n 条曲线均采用颜色监视器上不同的颜色绘制而成
5
plot(x,A)
绘制矩阵 A 对向量 x 的图形。对 m × n 的矩阵 A 和长度为 m 的向量 x ,绘制矩阵 A 的列对向量 x 的图形;
如果 x 的长度为 n ,则绘制矩阵 A 的行对向量 x 的图形。向量 x 可以是行向量,也可以是列向量
6
plot(A,x)
对矩阵 A 绘制向量 x 的图形。对于一个 m × n 的矩阵 A 和一个长度为 m 的向量 x ,对矩阵 A 的列绘制向量x 的图形;
如果 x 的长度为 n ,则对矩阵 A 的行绘制向量 x 的图形。向量 x 可以是行向量,也可以是列向量。
7
plot(A,B)
对矩阵 A 的行绘制矩阵 B 的列的图形。如果 A B 都是 m × n 的矩阵,则将绘制 n 条由 m 个有序对连成的曲线。
8
plot(x,y,str)
用字符串 str 指定的颜色和线型对 y 绘制 x 的图形
9
plot(x1,y1,str1,x2,y2,str2,…)
用字符串 str1 指定的颜色和线型对 y 1 绘制 x 1 的图形,用字符串 str2 指定的颜色和线型对 y 2
x 2 的图形 …… 每组参数值可以采用上述除复数值外的任何一种形式。 str1,str2… 可以省略,此时,
MATLAB 自动为每条曲线选择颜色和线型

 示例1(plot使用方法1、2、3):

x=-10:10;y=x*2;
figure(1)
subplot(2,2,1); plot(x,y);
subplot(2,2,2);plot(y);
Z =cos(-pi:pi/10:pi) +sqrt(-1)*sin (-pi:pi/10:pi);
subplot(2,2,3); plot(Z);

示例2(plot使用方法4、5、6):

A = [2 5 6 8 12;5 3 9 10 2;4 3 6 2 1;0 3 12 0 3;1 2 3 4 5 ];
B = [2 4 7 1 12;5 3 0 10 0;4 3 0 2 1;5 3 12 0 3;1 2 0 4 5 ];
x = [1 3 5 7 9];
figure(1);
subplot(2,2,1);plot(A);
subplot(2,2,2);plot(A,x);
subplot(2,2,3);plot(x,A);
subplot(2,2,4);plot(A,B);

1.2线型和颜色

当同一个图形中同时画了多条曲线时,需要使用不同的线型、标记和颜色来区分不同的曲线。
表2:曲线线型
线型代号表示类型
-实线
--虚线
-.点画线
点线
none无线
表3:标记
标记代号表示类型
.
*星号
oo
++
xx
diamond菱形
pentagram五角星形
square正方形
hexagram六角星形
none五点
<顶点指向左边的三角形
>顶点指向右边的三角形
表4:颜色
颜色代号表示颜色颜色代号表示颜色
g绿色w白色
m品红色r红色
b蓝色k黑色
c灰色y黄色

示例3:

figure(1)
x = 0:0.01*pi:pi*8;
plot(x, sin(x),'r:','Linewidth',2);hold on;
plot(x, 2*sin(x/2),'y', 'Linewidth' , 2);hold on;
plot(x,4*sin(x/4),'b--','Linewidth' , 3);hold on;
x= 0:pi:pi*8;
plot (x,sin (x), 'g^','MarkerSize',10,'LineWidth' ,3);hold on;
plot (x,2*sin (x/2), 'ko', 'MarkerSize',10,'Linewidth',3);hold on;
plot(x,4*sin(x/4), ' msquare ' , 'MarkerSize',10,'Linewidth' , 3);hold on;
xlim([0 pi*8])

1.3栅格 

      当图像需要对具体数值有更加清楚的展示时,在图形中添加栅格是十分有效的方法。在 MATLAB 中, grid on命令可以在当前图形的单位标记处添加栅格; grid off 命令则可以取消栅格的显示;单独使用 grid 命令则可以在on off 状态下交替转换,即起到触发的作用。

1.4文字注释

通常,曲线所表示的函数或数据的规律都需要进行一些文字说明或标注。图形窗口中的文本操作指令
如下。
● 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” 写在 ( xi , yi ) 的位置上。如果 “text” 是一个字符串向量,即一个字符矩阵,且与 x y 有相同的行数,则第 i 行的字符串将写在图形窗口的( xi , yi ) 位置上。
● text(x,y,'text','sc') :在图形窗口的 ( x , y ) 处输出字符 “text” ,给定左下角的坐标为 (0.0,0.0) ,右上角的坐标则为 (1.0,1.0)
●gtext('text') 通过使用鼠标或方向键,移动图形窗口中的十字光标,让用户将字符串text放置在图形窗口中。当十字光标走到所期望的位置时,用户按下任意键或单击任意按钮,字符串将会写入窗口中。
● legend(str1,str2,...,pos) :在当前图形上输出图例,并用说明性字符串 str1 str2 等做标注。其中,参数 pos 的可选项目如表 5 所示。
表5:图例位置
代号位置代号位置
-1将图例框放在坐标轴外的右侧0将图例框放在图窗内与曲线交叠最小的位置
1将图例框放在图窗内右上角2将图例框放在图窗内左上角
3将图例框放在图窗内左下角4将图例框放在图窗内右下角
● legend(str1,str2,...,'Location','pos') :在当前图形上输出图例,并用说明性字符串 str1 str2 等做标注。其中,参数 pos 的可选项目如表6 所示。
表6:图例位置
代号位置代号位置
North图窗内最上端South图窗内最下端
East图窗内最右端West图窗内最左端
NorthEast

图窗外右上角

(二维图窗的默认项)

North West图窗内左上角
SouthEast图窗内右下角SouthWest图窗内左下角

NorthOutside

图窗外上部SouthOutside图窗外下部
EastOutside图窗外右侧WestOutside图窗外左侧
NorthEastOutside图窗外右上部
NorthWestOutside
图窗外左上部

SouthEastOutside

图窗外右下部

SouthWestOutside

图窗外左下部

Best图窗内与曲线交叠最小的位置BestOutside图窗外最不占空间的位置

● legendoff :从当前图形中清除图例。
MATLAB 中的字符串可以对输出的文字风格进行预先设置,可以预先规定的有字体、风格及大小。另 外,可以进行上、下标的表示,还可以输出数学公式中经常用到的希腊字符和其他特殊字符。
  • 18
    点赞
  • 26
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值