当前位置:文档之家› 第5章 Matlab绘图功能

第5章 Matlab绘图功能

第5章 Matlab绘图功能
第5章 Matlab绘图功能

第五章 Matlab 绘图功能

5.1 二维图形的绘制

5.1.1 常用的二维图形绘图函数

基本的二维绘图函数有 plot —— 绘制2维曲线; title —— 给图形加标题; grid —— 显示网格线; xlabel —— 给x 轴加标记; ylabel —— 给y 轴加标记;

text —— 在坐标图中加入文字注释。

例:画出函数x y π2sin =,其中x 从0到π2步进100/π的曲线图。

X=0:pi/100:2*pi; Y=sin(X); plot(X,Y); % 作图

grid on;

% 网格线显示,若该为grid off 则不显示网格 ylabel('y=sin 2\pi x'); % Y 轴标注,可以有汉字 xlabel('x');

% X 轴标注,可以有汉字 title('function plot y=sin 2\pi x');

% 图标题

text(0.5,sin(0.5),'\leftarrow sin 2 \pi 0.5'); % text()可以在指定坐标处写文字标注 text(2.3,sin(2.3),'\leftarrow sin 2 \pi 2.3');

% 所有标注中均可使用汉字

% 对于特殊符号,如希腊字母,箭头等需要采用LaTeX 格式

结果如图5.1 所示。

图5.1 基本的二维绘图函数用法

5.1.2 图形的线型和颜色控制

在命令plot的高级用法中,可以设置作图的线型,标记类型,线和标记的颜色,粗细等特征。用命令doc LineSpec和doc plot可以查询详细的帮助文档。

线型的定义如下:

- solid line (default) 实线

-- dashed line 虚线

: dotted line 虚点连线

-. dash-dot line 点划线

常用标记的定义为:

+ plus sign 十字标记

o circle 小圈标记

* asterisk 星号标记

. point 黑点标记

x cross 叉号标记

s square 方框标记

d diamond 菱形标记

^ upward pointing triangle 上三角标记

v downward pointing triangle 下三角标记

> right pointing triangle 右三角标记

< left pointing triangle 左三角标记

p five-pointed star (pentagram) 五角星标记

h six-pointed star (hexagram) 六角星标记

颜色的定义是:

r red 红

g green 绿

b blue 蓝

c cyan 兰绿色

m magenta 洋红

y yellow 黄

k black 黑

w white 白

另外,利用线型属性和标记属性可以随心所欲地设计作图图式。

LineWidth 定义线的宽度,默认为1

MarkerEdgeColor 定义标记的边缘颜色

MarkerFaceColor 定义标记面的颜色

MarkerSize 定义标记记号的大小

举例1:

t=0:pi/20:2*pi;

plot(t,sin(t),'-.r*'); % 用红色点划线和星号作图

hold on; % 保持当前图形不被擦除

plot(sin(t-pi/2),'--bp'); % 用蓝色虚线和五角星标记作图

plot(sin(t-pi),':ks'); % 用黑色虚点线和方框标记作图

hold off;

结果如图5.2所示(黑白印刷时颜色表现不出来)。

图5.2 二维绘图线型和标记的特征控制(1)

举例2:

t=0:pi/20:2*pi;

plot(t,sin(2*t),'-mo',…% 线型:实线,洋红色,小圆标记'LineWidth',2,…% 线宽为2

'MarkerEdgeColor','k',…% 标记边缘颜色:黑色

'MarkerFaceColor',[.49 1 .63],…% 标记面颜色:淡绿

'MarkerSize',12); % 标记大小:12

结果如图5.3所示。

图5.3 二维绘图线型和标记的特征控制(2)

5.1.3 图形的标注

图形的标注可以用text函数。其用法是:

text(x, y, '字符串'); text(...'PropertyName', PropertyValue...);

其中,'PropertyName'为字符属性名称,PropertyValue为相应的属性取值。字符串中若有特殊符号,如希腊字母、箭头等,需要采用LaTeX格式表示。用doc text_props 可以得到详细的用法手册。对于常用的一些,举例如下:

●改变字符大小。属性为'FontSize',取值为:10 12 16…

●改变字符字体。属性为'FontName',取值为:'Courier','宋体','黑体'…

●改变字体背景颜色。属性为'BackgroundColor',取值为:[R,G,B]和'r','b','k','w'(红,蓝,黑,白)等,参见手册doc ColorSpec。

命令xlabel,ylabel,title等也可用类似方法修改字体属性。详见帮助文档。修改上例为:

X=0:pi/100:2*pi;

Y=sin(X);

plot(X,Y,'--r'); % 用红色虚线作图

grid on;

ylabel('y=sin 2\pi x','FontSize',14); % Y轴标注,设置了字号

xlabel('x','FontSize',14); % X轴标注,设置了字号

title('function plot y=sin 2\pi x','FontSize',14); % 图标题,设置了字号

text(0.5,sin(0.5),'\leftarrow sin 2 \pi 0.5',... % ...为续行号

'FontSize',18,... % 字号为18号

'BackgroundColor','w'); % 背景为白,字符部分将盖住网格线,使字符更清晰text(2.3,sin(2.3),'\leftarrow sin 2 \pi 2.3','BackgroundColor',[0.8 0.8 0.8]);

% 'BackgroundColor', [0.7 0.7 0.7]使得背景为灰色

结果如图5.4所示。

图5.4 修改作图字体属性,线型属性

5.1.4 坐标轴的控制方法

Matlab中对作图坐标轴的设置十分灵活,功能十分强大。用命令doc axes可以获得完整的帮助文档。与坐标轴设置相关的命令有:axis,get,set,gca等等。下面对常用的坐标轴设置作简要介绍。

(1)作图坐标范围设置(axis命令)

axis([xmin xmax ymin ymax]) % 用于设置x, y坐标作图范围

axis off % 用于不显示坐标

axis on % 用于显示坐标(默认)

(2)网格的控制(grid命令等)

grid on % 用于显示网格

grid off % 用于不显示网格

set(gca,'XGrid','on') % 用于只显示X方向网格

set(gca,'YGrid','on') % 用于只显示Y方向网格

set(gca,'GridLineStyle',':') % 用于设置网格的线型,具体如下:

% '-'表示实线;'--'表示虚线;':'表示虚点线(默认);'-.'表示点划线

(3)坐标轴线型的控制

set(gca,'LineWidth',2) % 控制坐标轴线宽度为2(默认为1)

(4)坐标形式的控制

set(gca,'box','on') % 用于显示封闭形式的坐标(默认)

set(gca,'box','off') % 用于显示开放形式的坐标

(5)坐标刻度方向控制

set(gca,'TickDir','in') % 坐标刻度朝内(默认)

set(gca,'TickDir','out') % 坐标刻度朝外

(6)坐标颜色控制

set(gca,'Color','y') % 坐标面背景颜色设置,本例为:黄

set(gca,'XColor','k') % 设置横坐标轴,刻度,字符的颜色

set(gca,'YColor','r') % 设置纵坐标轴,刻度,字符的颜色

(7)坐标刻度字形的控制

set(gca,'FontSize',14) % 控制字体大小

set(gca,'FontWeight','bold') % 设置字体粗细,有{normal} | bold | light | demi四种

(8)坐标位置和方向控制

set(gca,'XAxisLocation','top')

% 横坐标轴位于下方(bottom 默认)或上方(top )

set(gca,'YAxisLocation','right') % 纵坐标轴位于左方(left 默认)或右方(right ) set(gca,'XDir','reverse') % 横坐标反方向(由右到左为增) set(gca,'YDir','reverse')

% 纵坐标反方向(由右到左为增)

(9)坐标刻度线性/对数标度的设置

set(gca,'XScale','log') % 横坐标轴位作对数标度 set(gca,'YScale','log')

% 纵坐标轴位作对数标度

% 默认为线性标度'linear'。

% 用semilogx()或semilogy(),loglog(),plot()可直接得到对数标度的作图。

(10)坐标刻度数的控制

set(gca,'XTick',[])

% 横坐标不标度

set(gca,'XTick',[0 5 16 29]) % 在横坐标值为0, 5, 16, 29处标度 set(gca,'XTick',[20:10:100]) % 标度从20开始,间隔10标度,直到100 set(gca,'YTick',[])

% 对纵坐标的标度设置,同上

set(gca,'YTick',[0:5:20])

set(gca,'XTickLabel',{'One';'Two';'Three';'Four'})

% 将开始的4个刻度依次标记为字符One, Two, Three, Four % 然后循环利用这4个标记将其余刻度全部标完。

set(gca,'YTickLabel',{'One';'Two';'Three';'Four'}) % 同上,对纵坐标作标记。

举例1:John G. Proakis 著《数字通信》图5.2-4为二元信号的误码概率曲线。复制如图5.5所示。其中,两条曲线的计算公式为:

)(b b Q P γ=

)2(b b Q P γ=

Q 函数的定义是:

)2

(21)(x

erfc x Q

现在要求用Matlab 生成该图,尽可能做到与原图接近。

作图分析:

观察图5.5,在作图时至少需要: ● 曲线使用宽度为2的粗实线,颜色为黑; ● 手工确定作图坐标范围并手工作出坐标刻度;

● 进行标注,注意标注中需要写入公式等特殊字符,需用LaTeX 格式; ● 网格线需要设定为细实线;

● 横坐标表示每比特SNR ,用分贝表示,纵坐标是对数刻度的。

图5.5 从《数字通信》图5.2-4复制的原图

作图程序如下:

Q=inline('0.5.*erfc(x./sqrt(2))','x');

% Q 函数定义

gama_b_dB=0:0.5:14; % 横坐标范围(分贝)

gama_b=10.^(gama_b_dB./10); % 横坐标范围

Pb1=Q(sqrt(gama_b)); % 曲线1计算

Pb2=Q(sqrt(2*gama_b)); % 曲线2计算

plot(gama_b_dB,Pb1,'-k',gama_b_dB,Pb2,'-k','LineWidth',2); % 作图,线型为黑实线,宽度2像素set(gca,'YScale','log'); % 纵坐标轴位作对数标度

axis([0 14 10e-7 10e-1]); % 手工设置作图范围

xlabel('SNR per bit, \gamma_b (dB)','FontSize',12); % 横轴标注,并设定标注字号

ylabel('Probability of error, P_b','FontSize',12); % 纵轴标注,并设定标注字号

set(gca,'GridLineStyle','-'); % 用于设置网格的线型为实线

grid on; % 开启网格线

set(gca,'MinorGridLineStyle','none'); % 将对数分格的虚线去掉

set(gca,'XTick',[0:2:14]); % 在横坐标值为0,2,4...处标度

% 下面是在图中写字

text(2.2,5e-3,'\rho_r=-1',...

'FontSize',12,...

'BackgroundColor','w');

text(2,2e-3,'Antipodal',...

'FontSize',12,...

'BackgroundColor','w');

text(2,1e-3,'signals',...

'FontSize',12,...

'BackgroundColor','w');

text(2,0.4e-3,'P_b=Q(\surd 2\gamma_b)',...

'FontSize',12,...

'BackgroundColor','w');

text(10,2e-2,'\rho_r=0',...

'FontSize',12,...

'BackgroundColor','w');

text(10,9e-3,'Orthogonal',...

'FontSize',12,...

'BackgroundColor','w');

text(10,4e-3,'signals',...

'FontSize',12,...

'BackgroundColor','w');

text(10,1.5e-3,'P_b=Q(\surd \gamma_b)',...

'FontSize',12,...

'BackgroundColor','w');

结果如图5.6所示。

图5.6 用Matlab作出的曲线图,对比图5.5 举例2:连续信号及其采样后的离散信号的表示。

任务:以取样函数

x x

x f

sin )

(=

为例,作出该函数在)

10

,

10

(-

x内的波形图像。

f=inline('sin(x)./x','x'); % 定义波形函数

x=-10:0.1:10; % x的计算范围,步进0.1

y=f(x+1e-16); % 计算波形,为避免0/0,x加一微小值

plot(x,y,'--k'); % 用黑色虚线作图(到此看一看作图结果)axis([-10 10 -0.3 1.1]); % 到此作图坐标有何变化?

hold on; % 保持前图

box off; % 坐标盒子打开(看一看坐标有何变化?)sample_time=-10:1:10; % 设定离散信号的取样间隔为1

y_sample=f(sample_time+1e-16); % 计算离散信号样值

h=stem(sample_time,y_sample,'fill','-k');

% stem的用法与plot相同,专门用于画离散信号的火柴杆图

% stem的用法详见doc stem帮助

结果如图5.7所示。

图5.7 连续信号与离散信号在同一图中作出,注意box off的坐标形式

此外,我们还可以进一步对坐标轴标度进行手工设定。例如将横坐标标度的字符进行任意设置,接上例,如果继续执行以下两句指令:

set(gca,'XTick',[-10:2.5:0,4:4:10]); % 设定标度位置

set(gca,'XTickLabel',{'-10Ts';'-7.5Ts';'-5Ts';'-2.5Ts';'0';'4Ts';'8Ts'}); % 设定标度的符号

set(gca,'FontSize',14); % 设定坐标标注字号则获得的结果如图5.8所示。

图5.8 连续信号与离散信号在同一图中作出,对坐标标度进行了修改举例3:其他常用的特殊二维图形的绘制。利用bar可以作出二维条形图,stairs 可以作二维阶梯图。其用法与plot类似。

t=0:1/pi:2*pi;

plot(t,sin(t),'k','LineWidth',2);

hold on;

stairs(t,sin(t),'r'); % 阶梯图,注意与plot()所得图的区别

% 阶梯图常用来表现取样后零阶保持器的输出波形

bar(t,0.5*sin(t),'m'); % 条形图,注意正弦波幅度减小了

axis([0 2*pi -1.1 1.1]); % 坐标范围

则获得的结果如图5.9 所示。

图5.9 正弦波的plot,stairs,bar作图表达的比较

5.1.5 用极坐标作图

利用极坐标作图命令polar可以绘制极坐标表达的函数曲线。例如绘制方程2

ρ:

=

r和方程t

.0θ

001

t2

=

sin?

2

cos

theta=0:0.1:10*pi;

r=0.001*theta.^2;

polar(theta,r); % 作极坐标曲线1并保持

hold on;

t=0:0.01:2*pi;

polar(t,sin(2*t).*cos(2*t), '-k'); % 作极坐标曲线2

得到极坐标图如图5.11所示。

图5.11 用命令polar 进行极坐标作图

5.2 三维图形的绘制 5.2.1 三维曲线的绘制

用命令plot3可以进行三维空间曲线的绘制。plot3的常用格式是: plot3(X1,Y1,Z1,...) plot3(...,'PropertyName',PropertyValue,...)

详细用法参见doc plot3显示的帮助文档。举例如下,绘制三维曲线:

??

?

??∈=-=-=)15,0(cos )10(sin )10(πππt t z y t y t t x t=0:0.01:15*pi; x=(10*pi-t).*sin(t); y=(10*pi-t).*cos(t); z=t;

plot3(x,y,z,'-k','LineWidth',3);

% 作图,设定线型

grid on; % 看一看,曲线像不像沙发的弹簧?程序运行结果如图5.12所示。

图5.12 三维曲线作图实例采用命令stem3(x,y,z)可以作出三维火柴杆图。例如:

t=0:0.1:2*pi;

x=(10*pi-t).*sin(t);

y=(10*pi-t).*cos(t);

z=t;

stem3(x,y,z); % 作图

grid on;

运行结果为图5.13所示。

图5.13 用stem3进行的三维曲线作图实例

5.2.2 三维曲面的绘制

Matlab 绘制三维曲面的命令有: (1)mesh(x,y,z)——绘制三维表面网格。 (2)surf(x,y,z)——绘制三维表面图。

这些命令的详细用法请参考帮助文档。下面举例加以说明。考虑绘制一个二元函数),(y x f z =为:

xy

y x e

x x y x f z ----==22)2(),(2

其中,绘制范围为)3,3(-∈x ,)2,2(-∈y 。首先用meshgrid 函数产生一个x 和y 的网格矩阵,即产生一个x 轴坐标起始于-3,终止于3,步进为1的;y 坐标起始于-2,终止于2,步进为1的网格分割。其命令是:

>> [x,y]=meshgrid(-3:1:3, -2:1:2) x =

-3 -2 -1 0 1 2 3

-3 -2 -1 0 1 2 3

-3 -2 -1 0 1 2 3

-3 -2 -1 0 1 2 3

-3 -2 -1 0 1 2 3

y =

-2 -2 -2 -2 -2 -2 -2

-1 -1 -1 -1 -1 -1 -1

0 0 0 0 0 0 0

1 1 1 1 1 1 1

2 2 2 2 2 2 2

然后将得到的x和y代入)

f

z 中计算出z。即

(y

,

x

>> z=(x.^2-2*x).*exp(-x.^2 -y.^2 -x.*y)

z =

0.0000 0.0000 0.0027 0 -0.0498 0 0.0027

0.0000 0.0073 0.1494 0 -0.3679 0 0.0027

0.0019 0.1465 1.1036 0 -0.3679 0 0.0004

0.0137 0.3983 1.1036 0 -0.0498 0 0.0000

0.0137 0.1465 0.1494 0 -0.0009 0 0.0000 最后用

mesh(x,y,z);

作出三维表面网格图。得到结果如图5.14所示。

图5.14 用mesh进行的三维表面网格作图实例

为了使得作图更加精细,可以减小生成x,y网格的步进,当然,这是以增加计算量和内存需求为代价的。即

[x,y]=meshgrid(-3:0.1:3, -2:0.1:2); z=(x.^2-2*x).*exp(-x.^2 -y.^2-x.*y);

mesh(x,y,z);

则得到更精细的结果,如图5.15所示。

图5.15 更加精细的三维网格作图实例利用命令

hidden off

可以使得网格“透明”,如图5.16所示。

第五章MATLAB的绘画与图形处理

第五章 MATLAB 的绘画与图形处理 MATLAB 具有非常强大的二维和三维绘图功能,尤其擅长于各种科学运算结果的优秀可视化。 5.1二维曲线的绘制 5.1.1基本绘图命令plot plot 命令是MATLAB 中最简单而且使用最广泛的一个绘图命令,用来绘制二维曲线。 1. plot(x,y) 语法: plot(x,y) %绘制以x 为横坐标y 为纵坐标的二维曲线 【例5.1】绘制正弦曲线y=sin(x)和方波曲线,如图5.1所示。 >> x1=0:0.1:2*pi; >> y1=sin(x1); %y1为x1的正弦函数 >> plot(x1,y1); >> x2=[0 1 1 2 2 3 ]; >> y2=[1 1 0 0 1 1 ]; >> plot(x2,y2); >> axis([0 4,0 2]) %将坐标轴范围设定为0-4和0-2 2. plot(x1,y1,x2,y2,…)绘制多条曲线 plot 命令还可以同时绘制多条曲线,用多个矩阵对为参数,MATLAB 自动以不同的颜色绘制不同曲线。 【例5.2】绘制三条曲线,如图5.2所示。 图5.1 (a) 正弦曲线 (b) 方波曲线

>> x=0:0.1:2*pi; >> plot(x,sin(x),x,cos(x),x,sin(3*x)) %画三条曲线 图5.2 三条曲线 5.1.2绘制曲线的一般步骤 表5.1为绘制二维、三维图形一般步骤的归纳。 表5.1绘制二维、三维图形的一般步骤 内容 曲线数据准备: 对于二维曲线,横坐标和纵坐标数据变量; 说明: ?步骤1和3是最基本的绘图步骤,如果利用MA TLAB的默认设置通常只需要这两个基本步骤就可以基本绘制出图形,而其他步骤并不完全必需。 ?步骤2一般在图形较多的情况下,需要指定图形窗口、子图时使用。

第5章--MATLAB绘图-习题答案

第5章 MATLAB绘图 习题5 一、选择题 1.如果x、y均为4×3矩阵,则执行plot(x,y)命令后在图形窗口中绘制()条曲线。D A.12 B.7 C.4 D.3 2.下列程序的运行结果是()。A x=0:pi/100:2*pi; for n=1:2:10 plot(n*sin(x),n*cos(x)) hold on end axis square A.5个同心圆 B.5根平行线 C.一根正弦曲线和一根余弦曲线 D.5根正弦曲线和5根余弦曲线3.命令text(1,1,'{\alpha}+{\beta}')执行后,得到的标注效果是()。C A.{\alpha}+{\beta} B.{\α}+{\β} C.α+β D.\α+\β4.subplot(2,2,3)是指()的子图。A A.两行两列的左下图 B.两行两列的右下图 C.两行两列的左上图 D.两行两列的右上图 5.要使函数y=2e x的曲线绘制成直线,应采用的绘图函数是()。C A.polar B.semilogx C.semilogy D.loglog 6.下列程序的运行结果是()。B [x,y]=meshgrid(1:5); surf(x,y,5*ones(size(x))); A.z=x+y平面 B.与xy平面平行的平面 C.与xy平面垂直的平面 D.z=5x平面 7.下列函数中不能用于隐函数绘图的是()。D A.ezmesh B.ezsurf C.ezplot D.plot3 8.下列程序运行后,看到的图形()。C t=0:pi/20:2*pi; [x,y]=meshgrid(-8:0.5:8); z=sin(sqrt(x.^2+y.^2))./sqrt(x.^2+y.^2+eps);

第5章MATLAB绘图_习题答案

第5章MATLAB绘图 习题5 一、选择题 1.如果x、y均为4×3矩阵,则执行plot(x,y)命令后在图形窗口中绘制()条曲线。D A.12B.7C.4D.3 2.下列程序的运行结果是()。A x=0:pi/100:2*pi; forn=1:2:10 plot(n*sin(x),n*cos(x)) holdon end axissquare A.5个同心圆B.5根平行线 C.一根正弦曲线和一根余弦曲线D.5根正弦曲线和5根余弦曲线3.命令text(1,1,'{\alpha}+{\beta}')执行后,得到的标注效果是()。C A.{\alpha}+{\beta}B.αβ}C.α+βD.αβ 4.subplot(2,2,3)是指()的子图。A A.两行两列的左下图B.两行两列的右下图 C.两行两列的左上图D.两行两列的右上图 x的曲线绘制成直线,应采用的绘图函数是()。C 5.要使函数y=2e A.polarB.semilogxC.semilogyD.loglog 6.下列程序的运行结果是()。B [x,y]=meshgrid(1:5); surf(x,y,5*ones(size(x))); A.z=x+y平面B.与xy平面平行的平面 C.与xy平面垂直的平面D.z=5x平面 7.下列函数中不能用于隐函数绘图的是()。D A.ezmeshB.ezsurfC.ezplotD.plot3 8.下列程序运行后,看到的图形()。C t=0:pi/20:2*pi; [x,y]=meshgrid(-8:0.5:8); z=sin(sqrt(x.^2+y.^2))./sqrt(x.^2+y.^2+eps);

第5章--MATLAB绘图-习题答案上课讲义

第5章--M A T L A B绘图-习题答案

第5章 MATLAB绘图 习题5 一、选择题 1.如果x、y均为4×3矩阵,则执行plot(x,y)命令后在图形窗口中绘制()条曲线。D A.12 B.7 C.4 D.3 2.下列程序的运行结果是()。A x=0:pi/100:2*pi; for n=1:2:10 plot(n*sin(x),n*cos(x)) hold on end axis square A.5个同心圆 B.5根平行线 C.一根正弦曲线和一根余弦曲线 D.5根正弦曲线和5根余弦曲线 3.命令text(1,1,'{\alpha}+{\beta}')执行后,得到的标注效果是()。C A.{\alpha}+{\beta} B.{\α}+{\β} C.α+β D.\α+\β 4.subplot(2,2,3)是指()的子图。A A.两行两列的左下图 B.两行两列的右下图 C.两行两列的左上图 D.两行两列的右上图 5.要使函数y=2e x的曲线绘制成直线,应采用的绘图函数是()。C A.polar B.semilogx C.semilogy D.loglog 6.下列程序的运行结果是()。B [x,y]=meshgrid(1:5); surf(x,y,5*ones(size(x))); A.z=x+y平面 B.与xy平面平行的平面 C.与xy平面垂直的平面 D.z=5x平面 7.下列函数中不能用于隐函数绘图的是()。D A.ezmesh B.ezsurf C.ezplot D.plot3 8.下列程序运行后,看到的图形()。C t=0:pi/20:2*pi; [x,y]=meshgrid(-8:0.5:8);

第5章--MATLAB绘图-习题答案

》 第5章 MATLAB绘图 习题5 一、选择题 1.如果x、y均为4×3矩阵,则执行plot(x,y)命令后在图形窗口中绘制()条曲线。D A.12 B.7 C.4 D.3 2.下列程序的运行结果是()。A x=0:pi/100:2*pi; for n=1:2:10 … plot(n*sin(x),n*cos(x)) hold on end axis square A.5个同心圆 B.5根平行线 C.一根正弦曲线和一根余弦曲线 D.5根正弦曲线和5根余弦曲线3.命令text(1,1,'{\alpha}+{\beta}')执行后,得到的标注效果是()。C A.{\alpha}+{\beta} B.{\α}+{\β} C.α+β D.\α+\β ; 4.subplot(2,2,3)是指()的子图。A A.两行两列的左下图 B.两行两列的右下图 C.两行两列的左上图 D.两行两列的右上图 5.要使函数y=2e x的曲线绘制成直线,应采用的绘图函数是()。C A.polar B.semilogx C.semilogy D.loglog 6.下列程序的运行结果是()。B [x,y]=meshgrid(1:5); surf(x,y,5*ones(size(x))); " A.z=x+y平面 B.与xy平面平行的平面 C.与xy平面垂直的平面 D.z=5x平面 7.下列函数中不能用于隐函数绘图的是()。D

A.ezmesh B.ezsurf C.ezplot D.plot3 8.下列程序运行后,看到的图形()。C t=0:pi/20:2*pi; [x,y]=meshgrid(-8::8); z=sin(sqrt(x.^2+y.^2))./sqrt(x.^2+y.^2+eps); … surf(x,y,z) view(0,90);axis equal A.像墨西哥帽子 B.是空心的圆 C.边界是正方形 D.是实心的圆 9.下列程序运行后得到的图形是()。A [x,y]=meshgrid(-2:2); z=x+y; i=find(abs(x)<1 & abs(y)<1); 、 z(i)=NaN; surf(x,y,z);shading interp A.在一个正方形的正中心挖掉了一个小的正方形 B.在一个正方形的正中心挖掉了一个小的长方形 C.在一个正方形的上端挖掉了一个小的正方形 D.在一个正方形的下端挖掉了一个小的正方形 10.在使用MATLAB“绘图”选项卡中的命令按钮绘图之前,需要()。B A.在命令行窗口中输入绘图命令 B.在工作区中选择绘图变量 ) C.打开绘图窗口 D.建立M文件 二、填空题 1.执行以下命令: x=0:pi/20:pi; y=sin(x); 以x为横坐标、y为纵坐标的曲线图绘制命令为,给该图形加上“正弦波”标题的命令为,给该图形的横坐标标注为“时间”,纵坐标标注为“幅度”的命令分别为和。plot(x,y),title(‘正弦波’),xlabel(‘时间’),ylabel(‘幅度’) 2.在同一图形窗口中绘制y1和y2两条曲线,并对图形坐标轴进行控制,请补充程序。 x=-3::3; % y1=2*x+5;

matlab答案第五章

第五章 1.绘制下列曲线。 (1)2 1100 x y += (2)22 21x e y -=π (3)12 2 =+y x (4)? ??==3 2 5t y t x 答: (1) x=-10:0.1:10; y=100./(1+x.^2); plot(x,y) (2) x=-10:0.1:10; y=1/(2*pi)*exp(-x.^2/2); plot(x,y)

(3) ezplot('x^2+y^2=1') (4)

t=-10:0.1:10; x=t.^2; y=5*t.^3; plot(x,y) 2. 绘制下列三维图形。 (1)?? ? ??===t z t y t x sin cos (2)?? ? ??=+=+=u z v u y v u x sin sin )cos 1(cos )cos 1( (3)5=z (4)半径为10的球面(提示:用sphere 函数 答: (1) t=0:pi/100:2*pi; x=cos(t); y=sin(t); z=t; plot3(x,y,z)

(2) u=0:pi/100:2*pi; v=0:pi/100:2*pi; x=(1+cos(u)).*cos(v); y=(1+cos(u)).*sin(v); z=sin(u); plot3(x,y,z) (3) [x,y]=meshgrid(-100:100); z=5*ones(size(x)); mesh(x,y,z)

(4) [x,y,z] = sphere; %等价于sphere(20) 20是画出来的球面的经纬分面数...20的话就是20个经度, 20个纬度,或者说“就是划出20╳20面的单位球体,把球的表面分成400个小网格” surf(x,y,z); %绘制单位球面 x = 10*x; y = 10*y; z = 10*z; surf(x,y,z); %绘制半径为10的球面 axis equal 3.在同一图形窗口中采用子图形式分别绘制正方形、圆、三角形和六边形。 答: n=[3 4 6 2^10] for i=1:4 subplot(2,2,i) theta=linspace(pi/n(i),2*pi+pi/n(i),n(i)+1); plot(cos(theta),sin(theta)); axis equal; end 4. 分别用plot 和fplot 绘制下列分段函数的曲线。 ?????<--+=>+++=0,510,00,51)(342x x x x x x x x f 答: plot 函数: 方法一: x=linspace(-10,10,200); y=[]; for x0=x if x0>0 y=[y,x0.^2+(1+x0).^(1/4)+5]; elseif x0==0 y=[y,0]; elseif x0<0 y=[y,x0.^3+sqrt(1-x0)-5]; end end plot(x,y)

第5章 MATLAB绘图_习题答案

第5章MATLAB绘图 习题5 一、选择题 1.如果x、y均为4×3矩阵,则执行plot(x,y)命令后在图形窗口中绘制( )条曲线。D A。12 B。7 C.4 D.3 2.下列程序得运行结果就是()。A x=0:pi/100:2*pi; for n=1:2:10 plot(n*sin(x),n*cos(x)) hold on end axissquare A。5个同心圆B.5根平行线 C.一根正弦曲线与一根余弦曲线 D.5根正弦曲线与5根余弦曲线3.命令text(1,1,'{\alpha}+{\beta}’)执行后,得到得标注效果就是( )。C A.{\alpha}+{\beta}B。{\α}+{\β} C.α+βD.\α+\β 4。subplot(2,2,3)就是指( )得子图。A A.两行两列得左下图B.两行两列得右下图 C.两行两列得左上图D.两行两列得右上图 5。要使函数y=2ex得曲线绘制成直线,应采用得绘图函数就是().C A.polarB。semilogxC。semilogy D。loglog 6.下列程序得运行结果就是( )。B [x,y]=meshgrid(1:5); surf(x,y,5*ones(size(x))); A.z=x+y平面 B.与xy平面平行得平面 C。与xy平面垂直得平面 D.z=5x平面 7.下列函数中不能用于隐函数绘图得就是()。D A.ezmesh B.ezsurf C.ezplotD.plot3 8.下列程序运行后,瞧到得图形().C

t=0:pi/20:2*pi; [x,y]=meshgrid(-8:0、5:8); z=sin(sqrt(x、^2+y、^2))、/sqrt(x、^2+y、^2+eps); surf(x,y,z) view(0,90);axis equal A.像墨西哥帽子 B.就是空心得圆 C。边界就是正方形D.就是实心得圆 9。下列程序运行后得到得图形就是( ).A [x,y]=meshgrid(-2:2); z=x+y; i=find(abs(x)<1 & abs(y)<1); z(i)=NaN; surf(x,y,z);shadinginterp A。在一个正方形得正中心挖掉了一个小得正方形 B.在一个正方形得正中心挖掉了一个小得长方形 C.在一个正方形得上端挖掉了一个小得正方形 D。在一个正方形得下端挖掉了一个小得正方形 10.在使用MA TLAB“绘图”选项卡中得命令按钮绘图之前,需要().B A.在命令行窗口中输入绘图命令B。在工作区中选择绘图变量 C。打开绘图窗口D.建立M文件 二、填空题 1.执行以下命令: x=0:pi/20:pi; y=sin(x); 以x为横坐标、y为纵坐标得曲线图绘制命令为,给该图形加上“正弦波”标题得命令为,给该图形得横坐标标注为“时间",纵坐标标注为“幅度”得命令分别为与.plot(x,y),title(‘正弦波'),xlabel(‘时间’),ylabel(‘幅度') 2。在同一图形窗口中绘制y1与y2两条曲线,并对图形坐标轴进行控制,请补充程序. x=-3:0、1:3; y1=2*x+5; y2=x、^2-3*x; plot(x,y1)%绘制曲线y1 ①; plot(x,y2) %绘制曲线y2 m1=max([y1,y2]); m2=min([y1,y2]);

相关主题
文本预览
相关文档 最新文档