第三章_Matlab图形绘制[1]

合集下载

第三章Matlab 绘图与例题 (1)

第三章Matlab 绘图与例题  (1)

[X ,Y ] meshgrid(x, y)
mesh(X ,Y , Z )
• mesh(Z) 若提供参数x,y,等价于mesh(x,y,Z),否 则默认
• mesxhc 1除: n了, y生1成: m网格曲面,还在xoy面上生成等高线图
• meshz 除了生成网格曲面,还在曲线下加上一个长方形 台柱。
机动 目录 上页 下页 返回 结束
空间网格曲面。而函数meshgrid就用来生成xoy 平面上的小矩形顶点坐标值的矩阵(格点矩阵)。 函数meshgrid也适用于三元函数。
meshgrid的调用形式
• [X,Y]=meshgrid(x,y) 绘制二维图形时生成小矩形的格点 • [X,Y]= meshgrid(x) 等价于[X,Y]=meshgrid(x,x) • [X,Y,Z]=meshgrid(x,y,z)绘制三维图形生成小矩形的格点 • [X,Y,Z]= meshgrid(x) 等价于[X,Y,Z]=meshgrid(x,x,x)
c青
x叉
> 右三角形 -- 划线
m 洋红 + 十字 < 左三角形
y黄
*星
p 五角形
k黑
s 方块 h 六角形
d 菱形
例、在同一图形窗口画出不同颜色,线形的正、余 弦图形
机动 目录 上页 下页 返回 结束
三、 基本绘图控制参数
常用作图指令 • 清除图形窗口 clf • 显示/不显示格栅 grid on/off • 保留/释放现有图形 hold on/off • 使用/不使用坐标框 box on/off • 暂停直到击键盘 pause
例3-1-1、在同一坐标系中画出两个函数 y cos 2x, y x 的图形,自变量范围为:2 x 2 ,及5个点

03第三章Matlab绘图-Matlab教程

03第三章Matlab绘图-Matlab教程
subplot —— 子图分割命令 调用格式:
subplot(m,n,p) —— 按从左至右,从上至下排列

列 绘图序号
第14页,共76页。
1 0.8 0.6 0.4 0.2
0 -0.2 -0.4 -0.6 -0.8
-1 0
subplot(1,3,1); plot(t,y) subplot(1,3,2); plot(t,y3) subplot(1,3,3); plot(t,y2)
[x,y,w,h]=MYaxis(4,4,0.02,0.03,0.05,0.08,0.1,0.1,i);
subplot('position',[x,y,w,h]) end
第19页,共76页。
4. 多窗口绘图
figure(n) —— 创建窗口函数,n为窗口顺序号。 t=0:pi/100:2*pi; y=sin(t);y1=sin(t+0.25);y2=sin(t+0.5); plot(t,y) —— 自动出现第一个窗口 figure(2) plot(t,y1) —— 在第二窗口绘图 figure(3)
ezplot的调用格式:
ezplot(f) —这里f为包含单个符号变量x的符号表达式, 在x轴的默认范围
[-2*pi 2*pi]内绘制f(x)的函数图 ezplot(f,xmin,xmax) — 给定区间
ezplot(f,[xmin,xmax],figure(n)) — 指定绘图窗口绘 图。
第29页,共76页。
1
0.8
0.6
0.4
0.2
0
-0.2
-0.4
-0.6
-0.8
-1
0
1
2
3

第3章 数据的可视化(Graphics) 《MATLAB教程及实例(第1版)》课件(共43张PPT)

第3章 数据的可视化(Graphics) 《MATLAB教程及实例(第1版)》课件(共43张PPT)

3.2 特殊图形(túxíng)和坐标的绘制 (Specialized Plotting)
3.2.1 特殊图形(túxíng)绘制
在MATLAB R2021a的 Workspace窗口中,如果 (rúguǒ)选择了Workspace 窗口中的某个内存变量, 单击工具栏中的绘制列数 据曲线按钮〔Plot〕,出现 下拉的菜单可以绘制各种 不同的特殊图形。
>> subplot(2,1,1)
>> hist(x,20) %分20段
>> subplot(2,1,2)
>> hist(x,-3:1:3) %确定每段中间值
>> sum((x<=2.5)&(x>1.5))
第二十一页,共43页。
5. 离散数据图
〔1〕stem函数
将数据用一个垂直于横轴的火柴棒表示 ,火柴头的小圆表示数据点。
第3章 数据(shùjù)的可视化 (Graphics)
3.1 二维绘图(huìtú) 3.2 特殊图形和坐标的绘制 3.3 MATLAB的图形窗口 3.4 根本三维绘图(huìtú)命令
第一页,共43页。
3.1 二维绘图(2-D plotting) 3.1.1 绘图的一般(yībān)步骤
1. 曲线数据准备 2. 指定图形窗口和子图位置 3. 绘制图形 4. 设置坐标轴和图形注释 5. 仅对三维图形使用的着色和视点(shì diǎn)等设置 6. 图形的精细修饰 7. 按指定格式保存或导出图形
5.使用鼠标添加注释文字 gtext('s') %用鼠标把字符串放在图形上 gtext({'s1','s2','s3',...}) %一次将多个的字 符串分行(fēn xínɡ)放置在图形上 gtext({'s1';'s2';'s3';...}) %一次放置一个字 符串分屡次放置在图形上

第三章 利用MATLAB绘制函数图形

第三章 利用MATLAB绘制函数图形

四、特殊平面图形的绘制
五、三维曲线图形
plot3
如果输入自变量是三个大小相同的矩阵 x、y、z,那么 plot3 会
依序画出每个行矢量在三维空间所对应的曲线
格式:plot3(x1,y1,z1,S1, x2,y2,z2,S2,…) 说明:一次和绘制多条曲线
ezplot3
空间曲线的简易绘图命令
polar(theta,rho,'--r')

% 进行极坐标绘图
用ezpolar作图,输入: ezpolar('5*(1-sin(theta)')
四、特殊平面图形的绘制
hist指令
绘制统计直方图,对大量的资料,显示资料的分布情况和统计特性 格式:hist(Y, n) %n是一个标量,表明使用n个箱子. 将资料依大小分成数堆,将每堆的个数画出 例12:>> x=randn(500,1); %产生500个正态分布随机数 hist(x,25) %将数据绘制成25个直方
>> x= 0:0.1:4*pi; subplot(2, 2, 1); plot(x, sin(x)); subplot(2, 2, 2); plot(x, cos(x)); subplot(2, 2, 3); plot(x, exp(-x/3)); subplot(2, 2, 4); plot(x, x.^2);
注:还可直接输入 ezplot3('x','x*sin(x)*cos(x)','x*cos(x)*cos(x)',[0,20]).
举例—三维绘图
例15:同时绘制两条空间曲线. >> t = linspace(0, 10*pi, 501); plot3(t.*sin(t), t.*cos(t), t, t.*sin(t), t.*cos(t), -t); % 同时画两条曲线

matlab复习课件第3章(gai)

matlab复习课件第3章(gai)

diamond 菱形
第三章 MATLAB图形系统
命令应 该怎么 改?
线宽 也改 了?
第三章 MATLAB图形系统
第三章 MATLAB图形系统
我们还可以将图形窗口进行分割,从而绘制出多条曲线。 例如,将图形窗口分割成2×2的窗格,在每个窗格中分别绘制 出正弦、余弦、正切、余切函数曲线,其MATLAB程序为 x=0:pi/50:2*pi; k=[1 26 51 76 101]; x(k)=[]; %删除对应元素,它们是 删除对应元素, 删除对应元素 它们是正切 %和余切的奇异点 figure(1)
第三章 MATLAB图形系统
第三章 MATLAB图形系统
第三章 MATLAB图形系统
第三章 MATLAB图形系统
3.3 对数和极坐标系中图形绘制
有时变量变化范围很大,如x轴从0.01到100,这时如果仍 采用plot绘图,就会失去局部可视性,因此应采用对数坐标系 进行绘图(函数semilogx)。 例:求0.01~100之间的常用对数(以10为底的对数) x=0.01:.01:100; y=log10(x); figure(1) subplot(2,1,1) plot(x,y, 'r.'), grid on title('\ity=log_{10}(x) in Cartesian coordinates'), ylabel('y')
用于字符串中,表示将{} 中的内容下标显示
第三章 MATLAB图形系统
subplot(2,1,2), grid on semilogx(x,y,'b.') , grid on %半对数绘图
title('\ity=log_{10}(x) in Semi-log coordinates') xlabel('x'), ylabel('y')

第3章 MATLAB绘图

第3章  MATLAB绘图
注意:线形、颜色和标记点3种属性的符号必须放在同一个字符串内, 属性的先后顺序没有关系,可以只指定一个或两个,但同种属性不 能同时指定两个。
第3章 MATLAB绘图
例3-5:用红颜色、点连线、叉号画 出正弦曲线
clear clc x=0:0.2:8; y=sin(x); plot(x,y,’r:x’)
第3章 MATLAB绘图
3.1 二维绘图
一、plot函数 Plot函数有以下几种常用形式: 1.plot(x) ★若x为向量,则绘制出一个x元素和x元素排列 号之间关系的线性坐标图。 ★若x为矩阵,则绘制出x的列向量相对于行号的 一组二维图形
第3章 MATLAB绘图
例3-1:单矢量绘图(如图3-1)
第3章 MATLAB绘图
三、图形控制
4.图形的填充
fill函数用于填充二维封闭多边形。 函数:fill (x,y,‘颜色参数’) 功能:在由数据所构成的多边形内,用所指定的颜色 填充。如果该多边形不是封闭的,则用初始点 和终点的连线将其封闭。颜色参数三维控制符
同plot函数。
第3章 MATLAB绘图
Clear Clc x=[0 0.2 0.5 0.7 0.6 0.7 1.2 1章 MATLAB绘图
例3-2:二维矩阵绘图(如图3-2)
clear clc x=[1 2 3;7 8 9; 13 14 15];
plot(x)
auto
ij
square
将图形设置为正方形图形
xy
使用笛卡儿坐标系
equal
将图形的x,y坐标轴的单位刻 on 度设置为相等 关闭axis(square)和axis(equal) 函数的作用
打开所有轴标注、标记和背景

MATLAB基础知识及使用方法

MATLAB基础知识及使用方法

MATLAB基础知识及使用方法第一章:MATLAB简介与环境介绍1.1 MATLAB概述MATLAB是一种高级编程语言和数值计算环境,广泛应用于科学计算、工程设计、数据分析和算法开发等领域。

它提供了强大的数值计算工具和图形绘制功能,并有丰富的库函数和工具箱可供使用。

1.2 MATLAB环境介绍MATLAB的主要界面包括命令窗口、编辑器、工作区和命令历史等。

命令窗口用于交互式执行命令和脚本,编辑器用于编写和编辑脚本文件,工作区用于显示和管理变量,命令历史用于查看和管理执行过的命令。

第二章:MATLAB基本语法2.1 变量和数据类型在MATLAB中,变量可以通过简单的赋值来创建,并且不需要事先声明变量类型。

常见的数据类型包括数值类型(整数、浮点数)、字符类型和逻辑类型(布尔型)等。

MATLAB还提供了复数类型和矩阵类型,具有丰富的数值计算功能。

2.2 运算符和表达式MATLAB支持常见的数学运算符,如加减乘除、取余和乘方等。

此外,还提供了矩阵运算符和逻辑运算符,方便处理矩阵和逻辑表达式。

表达式可以由变量、常数和运算符组合而成,并且支持函数调用。

2.3 控制流程MATLAB提供了条件语句(if-else)、循环语句(for、while)和函数等控制流程结构,以实现不同的程序逻辑。

条件语句根据条件的真假执行不同的代码块,循环语句重复执行一段代码块,函数封装了一段可重复使用的代码。

第三章:MATLAB图形绘制3.1 二维图形绘制MATLAB提供了丰富的函数和工具箱,以绘制各种二维图形,如线图、散点图、柱状图和饼图等。

用户可以自定义图形样式、坐标轴刻度、图例和注释等,以满足不同的数据可视化需求。

3.2 三维图形绘制除了二维图形外,MATLAB还支持绘制三维图形,如曲面图和体积图等。

通过调整视角、设置颜色映射和光照效果,用户可以更直观地表达三维数据的特征和分布情况。

3.3 动态图形绘制MATLAB中的图形绘制功能不仅限于静态图形,还可用于生成动态图形。

第三章MATLAB2014

第三章MATLAB2014
第三章 MATLAB使用基础
引言 3.1 MATLAB入门 3.2 MATLAB基本运算 3.3 MATLAB编程 3.4 MATLAB绘图命令 3.5 控制系统的模型与分析

引言
全名为MATrix LABoratory(矩阵实验室)。 充分利用了Windows环境的交互性、多任务功能和图形功能 建立在C语言基础上的专用语言:使得矩阵运算、数值运算变 得极为简单。 更为抽象的高级计算机语言:既有与C语言等同的一面,又更 为接近人的抽象思维,便于学习和编程。 具有很好的开放性:用户可以根据自己的需求,利用
点乘运算要求A和B矩阵的维数相同。
例:a = [ 1 2 3 4] b= [2 2 1 2]
c=a*b = [ 4
cc=a.*b = [ 2 dotcul.m
6
4
(矩阵乘法)
(矩阵点乘)
10 14]
3 8]
2、点乘方 点乘方包括矩阵与常数和矩阵与矩阵的运算。
a.^3=[ aij3 ],a矩阵的3次方――a矩阵的每个元素的3
3.2MATLAB基本运算
一、标量的运算
+、-、*、/、^ 、sqrt、^(n/m)
二、矩阵的运算
1、加减:A+B、A-B,A与B的维数必须相同。 2、乘法:C=A*B,A列 = B行,于是C行=A行,C列=B列
Exam1.m
3、除法(求逆):A-1,inv(A),A为方阵
左除:A\B = inv(A)*B;A为方阵,A的列数=B的行数 右除:C/A = C*inv(A):A为方阵,C的列数=A的行数 4、乘方:A^x,x为标量,A为方阵 5、转置:A’, 例如: a= 1 2 3 4 aa = a’ % 求矩阵转置 aa = 1 2 Exam1.m 3 4

MATLAB语言与控制系统仿真_参考题答案_第3章

MATLAB语言与控制系统仿真_参考题答案_第3章

3.5 MATLAB 绘图实训3.5.1 实训目的1.学会MATLAB 绘图的基本知识;2.掌握MATLAB 子图绘制、图形注释、图形编辑等基本方法;3.学会通过MATLAB 绘图解决一些实际问题;4.练习二维、三维绘图的多种绘图方式,了解图形的修饰方法;5.学会制作简单的MATLAB 动画。

图3-46 炮弹发射示意图3.5.2 实训内容1. 炮弹发射问题〔1炮弹发射的基础知识炮弹以角度α射出的行程是时间的函数,可以分解为水平距离)(t x 和垂直距离)(t y 。

)cos()(0αtv t x = %水平方向的行程; 205.0)sin()(gt tv t y -=α %垂直方向的行程;其中,0v 是初速度;g 是重力加速度,为9.82m/s ;t 是时间。

〔2炮弹发射程序举例:分析以下程序以及图3-47各个图形的实际意义。

a=pi/4; v0=300; g=9.8;t=0:0.01:50; x=t*v0*cos<a>;y=t*v0*sin<a>-0.5*g*t.^2;subplot<221>;plot<t,x>;grid;title<‘时间-水平位移曲线'>; subplot<222>;plot<t,y>;grid;title<‘时间-垂直位移曲线'>; subplot<223>;plot<x,y>;grid;title<‘水平位移-垂直位移曲线'>; subplot<224>;plot<y,x>;grid;title<‘垂直位移-水平位移曲线'>; 图3-4745角发射曲线 〔3编程解决炮弹发射问题①假设在水平地面上以垂直于水平面的角度向上发射炮弹,即发射角90=α,假设初速度分别为[310,290,270]m/s,试绘制时间-垂直位移曲线,编程求取最高射程;绘图要求:◆ 标题设为"炮弹垂直发射问题";◆ 在图上通过添加文本的方式表明初速度; ◆ 在x 轴标注"时间";◆ 在y 轴上标注"垂直距离"; ◆ 添加网格线;◆ 将310m/s 的曲线改为线粗为2的红色实线; ◆ 将290m/s 的曲线改为线粗为3的绿色点划线;◆ 将270m/s 的曲线改为线粗为2的蓝色长点划线;a=pi/2; v1=310; g=9.8;t=0:0.01:50; x1=t*v1*cos<a>;y1=t*v1*sin<a>-0.5*g*t.^2;plot<t,y1>;grid; title<'炮弹垂直发射问题'>; xlabel<'时间'>; ylabel<'垂直距离'>; hold on; v2=290;x2=t*v2*cos<a>;y2=t*v2*sin<a>-0.5*g*t.^2; plot<t,y2>; v3=270;x3=t*v3*cos<a>;y3=t*v3*sin<a>-0.5*g*t.^2; plot<t,y3>;zgsc=[max<y1>; max<y2>; max<y3>] %三次发射的最高射程 运行结果如下: zgsc =1.0e+003 * 4.9031 4.29083.7194最高射程分别为:4903.1米,4290.8米,3719.4米。

第三章 matlab图形绘制

第三章 matlab图形绘制
gtext 用于在图形中特定的位置加字符串,位置用鼠标
指定
grid 图形中加网格
例3.在同一坐标系下画出sinx和cosx的图形,并适当加 标注.
x=linspace(0,2*pi,30);y=[sin(x);cos(x)]; plot(x,y);grid;xlabel (‘x’);ylabel (‘y’); title(‘sine and cosine curves’); text(3*pi/4,sin(3*pi/4),’\leftarrowsinx’); text(2.55*pi/2,cos(3*pi/2),’cos\rightarrow’)
结果见下图.
4.多幅图形
subplot(m,n,p)可以在同一个图形窗口中画出多个图 形,用法见下例.
x=linspace(0,2*pi,30);y=sin(x);z=cos(x);u=2*sin(x).* cos(x);v=sin(x)./cos(x); subplot(2,2,1),plot(x,y),title(‘sin(x)’) subplot(2,2,2),plot(x,z),title(‘cos(x)’) subplot(2,2,3),plot(x,u),title(‘2sin(x)cos(x)’) subplot(2,2,4),plot(x,v),title(‘sin(x)/cos(x)’)
plot(x1,y1,x2,y2, …) 在此格式中,每对x,y必须符合 plot(x,y)中的要求,不同对之间没有影响,命令对每 一对x,y绘制曲线.
例1.做出y=sinx在[0,2π]上的图形,结果见下图.
x=linspace(0,2*pi,30); sin(x);plot(x,y)
例2.在同一坐标系下做出两条曲线y=sinx和y=cosx 在[0,2π]上的图形.结果见下图.

第 3章 MATLAB绘图入门

第 3章  MATLAB绘图入门

例:利用函数hist绘制randn概率分布图。 解:>> Y = [1, 2, 2, 5, 6, 6, 8, 11]; hist(Y) >>hist(Y,20) >> Y = [1,2.5,2.1;3,3.5,6]; hist(Y),legend('第一列','第二列','第三列')
例:利用函数rose绘制极坐标下的玫瑰图,其中t为 随机数。 x=rand(1000,1)*100; t=x*pi/180; %设置x为正态分布随机数, 设置函数关系 rose(t) ;

在0≤x≤2区间内,绘制曲线 y=2e-0.5xcos(4πx)
>>x=0:pi/100:2*pi; y=2*exp(-0.5*x).*cos(4*pi*x); plot(x,y)
设置曲线样式表
线型 : -. 实线 虚线 点划线 . o x 点标记 点 小圆圈 叉子符 y m c 颜色 黄 棕色 青色
t=[0:pi/20:4*pi]; %定义时间范围 hold on %允许在同一坐标系下绘制不同的图形 axis([0 4*pi -10 10]) plot(t, 10*sin(t), 'r:') %线形为点划线、颜色为红色、数据点标记为加号 plot(t, 5*cos(t),'b*--') %线形为虚线、颜色为蓝色、数据点标记为星号 xlabel('时间t'); ylabel('幅值x'); title('简单绘图实例'); legend('x1=10sint:点画线','x2=5cost:虚线') %添加文字标注 gtext('x1'); gtext('x2') %利用鼠标在图形标示曲线说明文字 grid on %在所画出的图形坐标中添加栅格

MATLAB三维图形绘制

MATLAB三维图形绘制

说明:当只有参数z时,以z矩阵的行下标作为x坐标轴,把z
的列下标当作y坐标轴;x、y分别为x、y坐标轴的自变量;
当有x、y、z参数时,c是指定各点的用色矩阵,当c省略时
默认用色矩阵是z的数据。如果x、y、z、c四个参数都有,
则应该都是维数相同的矩阵。
.
3
3. 三维曲面图
语法:
surf (z)
%画三维曲面图
3.7000 8.1000 0.6000
1.5000 7.7000 -4.5000]
>>bar(x,y)
%画条形图
>>bar3(x,y) %画三维条形图
图4.23 (a) 条形. 图
(b) 三维条形图
14
二、直方图
语法:
分段的个数, 默认为10
hist(y,m) %统计每段的元素个数并画出直方图
hist(y,x) % x是向量,用于指定所分每个数据段
【例】使用几种绘制离散数据的命令来显示 ye2xsin(x) 的离散数据。
五、等高线图
语法:
contour3(Z,n)
%绘制Z矩阵的三维等高线
contour(x,y,z,n)
%绘制以x和y指定x、y坐标的二维等高线
说明:n为等高线的条数,省略时为自动条数。
.
17
x=0:0.1:2*pi; y=sin(x).*exp(-2*x); subplot(3,1,1) stem(x,y,'filled') subplot(3,1,2) stairs(x,y) subplot(3,1,3) scatter(x,y)
.
24
【上例续】使用消息框显示当阻尼系数大于1时的警告信 息,如图所示。

Matlab图形绘制 (2)

Matlab图形绘制 (2)

②极坐标系函数polar,调用形式为:polar(theta,rho)或polar(theta,r h③o,双s)纵坐标(双y轴坐标系)函数plotyy,调用形式为: ➢plotyy(X1,Y1,X2,Y2) ➢plotyy(X1,Y1,X2,Y2,fun) fun可以是plot、semilogx、semilogy或log log 注➢:pl双ot坐yy标(X绘1,制Y1图,X形2,的Y2调,f用un过1,程fu中n2,) 不fu能n1够绘像制前(X面1,的Y1p)l,otf函un数2绘那制样(对X2曲,Y线2) 属性进行设置,需要使用句柄图形控制完成。
说明 填充绘图 条形图
barh 水平条形图 comet 彗星图 errorbar 误差带图
ezplot ezpolar
简单绘制函数 图
简单绘制极坐 标图
函数名 feather stem
fill stairs contour
contour f scatter
说明 矢量图 离散序列饼状 图 多边形填充 阶梯图 等高线图
Hist用来显示资料的分段情况和统 计特性,适合于大量数据的情况
示例:x=randn(9999,1);hist(x,50)
Rose与hist接近,将资料的大小视 为角度,资料的个数作为距离,采 示例:x=randn(9999,1);rose(x,50) 用极坐标绘图。
Stem产生针状图,常被用来绘制数 x=linspace(0,10,100);y=sin(x).*exp 位讯号。
(-x/4);stem(x,y);
Fill将资料点视为多边形顶点,并 x=linspace(0,10,100);y=sin(x).*exp 将此多边形涂上颜色。
(-x/4);fill(x,y,’c’);

数字图像处理及应用(MATLAB)第3章

数字图像处理及应用(MATLAB)第3章
反 转 后 图 像
程序运行结果如图(c)所示。
4.灰度非线性变换 当用某些非线性函数,例如平方、对数、指数函数等作为 映射函数时,可实现图像灰度的非线性变换。灰度的非线性 变换简称非线性变换,是指由这样一个非线性单值函数所确 定的灰度变换。 (1)对数变换 对数变换常用来扩展低值灰度,压缩高值灰度,这样可以使低值灰 度的图像细节更容易看清,从而达到增强的效果。对数非线性变换
[例] 假设一个图像由一个4×4大小的二维数值矩阵构成,如图(a)
所示,试写出图像的灰度分布,并画出图像的直方图。
灰度直方图计算示意图
经过统计图像中灰度值为0的像素有1个,灰度值为1的 像素有1个,…,灰度值为6的像素有1个。由此得到图像的 灰度分布如表所示,由表可得灰度直方图如图(b)所示。 图像的灰度分布
3.1.2 (rk)代表概 率密度函数,并且有下式成立:
nk Pr (rk ) 0 rk 1 n k 0,1,2,l 1
式中nk为图像中出现rk这种灰度的像素数,n是图像中像素 总数,nk/n就是概率论中的频数,l是灰度级的总数目。在直 角坐标系中作出rk与P(rk)的关系图形,就得到直方图
图 不同的图像其直方图却是相同的
图 直方图的叠加性质
由以上可知,尽管直方图不能表示出某灰度级的像素在什么位
置,更不能直接反映出图像内容,但是却能描述该图像的灰度分布
特性,使人们从中得到诸如图像的明亮程度、对比度等,成为一些 处理方法的重要依据。通常一幅均匀量化的自然图像由于其灰度直
方图分布集中在较窄的低值灰度区间,引起图像的细节看不清楚,
(a)反变换关系
(b) 原图 图像反转的效果
(c)变换后的图像
由直线方程截斜式可知当k =-1,b=L-1时,其表达式为:

matlab程序设计第三章课后习题答案

matlab程序设计第三章课后习题答案

1. p138 第6题在同一坐标轴中绘制以下两条曲线并标注两曲线交叉点。

>> t=0:0.01:pi;>> x1=t;>> y1=2*x1-0.5;>> x2=sin(3*t).*cos(t);>> y2=sin(3*t).*sin(t);>> plot(x1,y1,'r-',x2,y2,'g-')>> axis([-1,2,-1.5,1])>> hold on>> s=solve('y=2*x-0.5','x=sin(3*t)*cos(t)','y=sin(3*t)*sin(t)'); >> plot(double(s.x),double(s.y),'*');截图:p366 第4题绘制极坐标曲线,并分析对曲线形状的影响。

function [ output_args ] = Untitled2( input_args )%UNTITLED2 Summary of this function goes here% Detailed explanation goes heretheta=0:0.01:2*pi;a=input('请输入a的值:');b=input('请输入b的值:');n=input('请输入n的值:');rho=a*sin(b+n*theta);polar(theta,rho,'k');end下面以a=1,b=1,n=1的极坐标图形为根底来分析a、b、n的影响。

对a的值进行改变:比照发现a只影响半径值的整倍变化对b的值进行改变:比照发现b的值使这个圆转换了一定的角度对n的值进行改变:比照发现当n>=2时有如下规律1、当n为整数时,图形变为2n个花瓣状的图形2、当n为奇数时,图形变为n个花瓣状的图形分别让n为2、3、4、5同时改变b和n的值,比照发现图形变为2n个花瓣状,并且还旋转了一定角度1 绘制sin(x)曲线,通过句柄修改曲线的颜色,要求:a)生成曲线的同时,获取句柄,再修改颜色;>> x=0:pi/50:2*pi;>> y=sin(x);>> h=plot(x,y)h =>> set(h,'color','r');截图如下:b〕先生成曲线,然后再获取句柄,再完成颜色修改。

matlab编程基础与工程应用第三章课件

matlab编程基础与工程应用第三章课件
例2.1-1使用的是同行输入法,还可以使用异行输入法。
>> y=[1,2,3 4,5,6 7,8,9] y = 1 2 4 5 7 8
3 6 9
需要说明的是,在第一行“ 1,2,3 ”输入,并按 <Enter> 键后,光标下移 一 行 。 在 输 入 4 之 前 需 要 按 一 个 空 格 键 , 然 后 再 输 入 “ 4,5,6 ” 。 按 <Enter>键后,光标下移一行,先按一个空格键,然后再输入“7,8,9]”。
>> y=rand(1,5) y= 0.8147 0.9058 0.1270 0.9134 0.6324
全1数组ones(1,n) 由于 ones(m,n) 可以产生元素全为 1 的( mn )的矩阵,所以当 m=1 时, ones(1,n)产生元素全为1的行向量。
>> y=ones(1,7) y= 1 1 1 1 1 1 1
(1)冒号生成法。
a1=1:5 %缺省步长为1 a2=0:pi/3:pi %非整数步长 a3=1:-0.25:0 %负实数步长 a1 = 1 2 3 4 5 a2 = 0 1.0472 2.0944 3.1416 a3 = 1.0000 0.7500 0.5000 0.2500
(参看第2.3.3 MATLAB指令行中标j) 全下标法 A(I,:) A(:,j) A(I,J) A(:) 单下标法 A(k) A(L) 说明 访问矩阵A的第i行,第j列元素,其中i,j为标量 访问矩阵A的第i行的所有元素 访问矩阵A的第j列的所有元素 访问由向量I和J指定的矩阵A中的元素 访问矩阵A的所有元素,并按照列从左至右的次序, 首尾相接而生成一个向量 使用索引访问矩阵中的第k个元素

MATLAB实用技巧精讲之三

MATLAB实用技巧精讲之三

\sigma \delta \leq
Page 22
σ δ ≤
\Sigma \Delta \geq
Σ Δ ≥
\Phi \infty \neq
Φ ∞ ≠
数学物理建模与计算机辅助设计
MATLAB绘图和数据可视化
• 二维图形绘制
– 二维图形修饰 (3)文本标注 text(x,y,'标注文本及控制字符串')
MATLAB绘图和数据可视化
• 二维图形绘制
– 二维特殊函数图的绘制
表:Matlab中常见二维特殊图形函数
函数名
说明
函数名
说明
area bar hist
polar
填充绘图 条形图 直方图
极坐标图
feather harh pie
contour
矢量图 水平条形图 饼图
等高线图
Page 20
数学物理建模与计算机辅助设计
P数据可视化
• 【例】 clf x = 0:0.1*pi:2*pi; y=sin(x); z=cos(x); plot(x,y,x,z) xlabel('x') ylabel('y') title('y=sin(x)') legend('y=sin(x)','z=cos(x)') grid on grid off gtext('sin(1)')
Page 25
数学物理建模与计算机辅助设计
MATLAB绘图和数据可视化
• 二维图形绘制
– 复杂图形的布置和修饰:图形的保持(hold on和hold off) 例: x=0:0.1*pi:2*pi; y=sin(x); z=cos(x); plot(x,y,'-*') hold on %开启 plot(x,z,'o'); plot(x,y+z,'-h') legend('sin(x)','cos(x)','sin(x)+cos(x)',0) hold off %关闭
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

屏蔽的网格图
meshgrid
生成网格点
MATLAB对于网格的处理方法是:将xy平面按指定方式分隔成平面网
格,然后根据程序中给定的方式计算第三维变量的值,即z轴的值,与对 应的xy平面的坐标构成三维点元素,根据由此得到的(x,z)和(y,z)计算各平
面的曲线,彼此相连就构成了网格图。
[X,Y]=meshgrid(x,y) x和y是给定的向量,可以定义网格的划分区域,也 可以定义网格的划分方法,X和Y是网格划分后的数值矩阵。 mesh(X,Y,Z,C)绘制四个矩阵变量的彩色网格面图形,观测点由view定义, 坐标轴由axis定义,C设置颜色,由colormap实现。 mesh(X,Y,Z) 使用C=Z,即颜色正比于图高。 mesh(x,y,Z,C)由两个向量代替矩阵,要求length(x)=n,length(y)=m,且 [m,n]=size(Z) x=-2:0.1:2;y=-2:0.1:2; 示例1: [xx,yy]=meshgrid(x,y); zz=xx.^2+yy.^2; %ii=find(xx.^2+yy.^2>4);zz(ii)=NaN; surf(xx,yy,zz);
Compass函数与feather函数接近, theta=linspace(0,2*pi,40);z=cos(theta) 只是每个箭头的起点都在圆内 +i*sin(theta);compass(z);
[x,y]=meshgrid(-2:0.2:2);z=x.*exp(-x.^2Quiver用来绘制向量场图。 y.^2);[Dx,Dy]=gradient(z,0.2,0.2); Contour(x,y,z);hold on;quiver(x,y,Dx,Dy);colormap hsv ;hold off
AX是对应两个坐标轴的句柄, H1和H2分别是对应plot的句柄。
(2)二维特殊函数图形
函数名 area bar barh comet errorbar ezplot ezpolar 说明 填充绘图 条形图 水平条形图 彗星图 误差带图 简单绘制函数图 函数名 feather stem fill stairs contour contourf 说明 矢量图 离散序列饼状图 多边形填充 阶梯图 等高线图 填充的等高线图 散射图 函数名 fplot hist pareto pie plotmatrix ribbon 说明 函数图绘制 直方图 Pareto图 饼图 分散矩阵绘制 三维图的二维条状显示
stem3
sphere
球面图
trimesh
三角形网格图
(4)旋转曲面图 cylinder
[X,Y,Z] = cylinder(r) 这里的r表示构成旋转曲面的曲线。
方法一: Matlab程序如下。 x=0:10:600; [X,Y,Z]=cylinder(30*exp(-x/400).*sin((x+25*pi)/100)+130); surf(X,Y,Z) 方法二:将旋转曲面用参数方程表示。
x = logspace(-1,2); loglog(x,exp(x),'-s') grid on
②极坐标系函数polar,调用形式为:polar(theta,rho)或polar(theta,rho,s)
③双纵坐标(双y轴坐标系)函数plotyy,调用形式为: plotyy(X1,Y1,X2,Y2) plotyy(X1,Y1,X2,Y2,fun) fun可以是plot、semilogx、semilogy或loglog plotyy(X1,Y1,X2,Y2,fun1,fun2) fun1绘制(X1,Y1),fun2绘制(X2,Y2)
3.2 三维曲线的绘制
绘制三维曲线的函数是plot3,与plot函数的调用格式相同,也有以 下四种:
plot3(x,y,z)
plot3(X,Y,Z) X,Y,Z是相同阶数的矩阵,绘出三矩阵的列向量的曲线。 plot3(X,Y,Z,s)
plot3(x1,y1,z1,s1,x2,y2,z2,s2,....)组合图形
示例2:
x=-10:0.5:10;y=-8:0.5:8; [x,y]=meshgrid(x,y); z=sin(sqrt(x.^2+y.^2))./sqrt(x.^2+y.^2); mesh(x,y,z);
(2)着色函数surf surf(X,Y,Z,C)输入参数的设置和mesh相同,不同的是mesh绘制的是网格 图,而surf绘制的着色的三维表面。两者对比如下图所示
第三章 Matlab图形绘制
10
10
5
5
0
0
-5
-5
-10 30 20 10 0 5 0 15 10 25 20
-10 30 20 10 0 5 0 15 10 25 20
25
20
2
1
15
0
10
-1
5
-2 2 1 0 -1 -1 -2 -2 1 0 2
5
10
15
20
25
主要内容
3.1. 二维曲线的绘制 3.2. 三维曲线的绘制 3.3 三维网线图和曲面图的绘制 3.4 Matlab图形处理的基本技术 3.5 动画技术 3.6 图形用户界面设计
3、显函数、隐函数和符号函数作图 (1)fplot(fun,lims)绘制由字符串fun指定函数名的函数在x轴区间为 lims=[xmin, xmax]的函数图。若lims=[xmin,xmax,ymin,ymax],则y轴也被 限制。
例题:
解 1)首先用M文件fun1.m定义函数f(x)如下 function y=Afun1(x); if x<1 y=x+1; else y=1+1./x; end 在matlab命令窗口输入fplot('Afun1',[-3,3])就可画出函数 f (x) 的图形。
示例:x=randn(9999,1);rose(x,50)
Stem产生针状图,常被用来绘制数 x=linspace(0,10,100);y=sin(x).*exp(位讯号。 x/4);stem(x,y);
Fill将资料点视为多边形顶点,并将 x=linspace(0,10,100);y=sin(x).*exp(此多边形涂上颜色。 x/4);fill(x,y,’c’); Feather函数将每一个数据点视为 复数,并以箭头画出。 theta=linspace(0,2*pi,40);z=cos(theta) +i*sin(theta);feather(z);
3.1 二维曲线的绘制
1、绘制二维图形最常用的函数是plot,调用格式有以下四种: (1)plot(Y) 如果Y为实向量,则以Y的索引坐标作为横坐标,以Y本身的
元素作为纵坐标。如果Y为复数向量,则以该向量实部为横坐标,虚部为 纵坐标。 (2)plot(X,Y)此时以X为横坐标,Y为纵坐标。X和Y要求维数必须相同。 当变量X和Y是同阶矩阵时,将按照矩阵的行或列进行操作。 (3)plot(X,Y,s) 第三个变量用于设置图形显示属性。设置图形的线型、颜 色、标记等。 (4)plot(X1,Y1,s1,X2,Y2,s2,…..) 每三项为一组绘制多条曲线。
Matlab绘图命令中的各种选项 曲线线型 曲线颜色 标记符号
选项
-: -. noneFra bibliotek意义实线 虚线 点线 点划线 无线
选项
b g m w c k
意义
蓝色 绿色 红紫色 白色 蓝绿色 黑色
选项
* . x v ^ >
意义
星号 点号 叉号 ▽ △ ▷
r y
红色 黄色
O
p s d h <
圆圈
五角星 方块 菱形 六角星 ◁
2、特殊的二维图形函数 (1)特殊坐标系的二维图形函数,区别于均匀单y轴坐标系而言,具体有 对数坐标系、极坐标系和双y轴坐标等。 ①对数坐标曲线,主要有semilogx,semilogy和loglog,前两个分别以x坐标 和y坐标为对数坐标,后一个是双对数坐标。 x=1:0.1*pi:2*pi; y=sin(x); semilogx(x,y,'-*') x = 0:.1:10; semilogy(x,10.^x)
简单绘制极坐标图 scatter
Bar函数适合于数据点不多时使用 示例:x=1:15;y=rand(size(x));bar(x,y); 如果已知数据的误差量,可用 示例:x=linspace(0,2*pi,20);y=sin(x); z=std(y)*ones(size(x));errorbar(x,y,z);
以第二种形式为例:
[x,y]=meshgrid(-2:0.1:2,-2:0.1:2); z=x.*exp(-x.^2-y.^2); plot3(x,y,z)
3.3 三维网线图和曲面图的绘制
(1)网线图mesh函数
函数名 说明 mesh 三维网格图
函数名 meshc
说明 将网格与等高线结合
meshz
2)这里也可以使用匿名函数,编写程序如下
fun2=@(x) (x+1)*(x<1)+(1+1/x)*(x>=1); fplot(fun2,[-3,3])
(2) ezplot(f)可用来绘制显函数、隐函数和参数方程的图形,x轴的默认
范围为[-2pi,2pi]。 1)对于显函数y=f(x),调用格式为:ezplot(f,[xmin,xmax])
(3)特殊的三维绘图命令
函数名 说明 函数名 说明 函数名 说明
bar3
trisurf pie3
三维条形图
三角形表面图 三维饼状图
三维离散数据图
surfc
ezgraph3 scatter3
相关文档
最新文档