matlab课件 第6章 高级图形处理功能
matlab教程ppt(完整版)
数据处理
应用MATLAB的信号处理和统计 分析函数库,进行数据预处理、
特征提取和模型训练。
机器学习与深度学习
机器学习
介绍MATLAB中的各种机器学习算法,如线性回归、决策 树、支持向量机等,以及如何应用它们进行分类、回归和 聚类。
深度学习
介绍深度学习框架和网络结构,如卷积神经网络(CNN) 、循环神经网络(RNN)等,以及如何使用MATLBiblioteka B进行 训练和部署。感谢观看
THANKS
符号微积分
进行符号微分和积分运算,如极限、导数和 积分。
符号方程求解
使用solve函数求解符号方程。
符号矩阵运算
进行符号矩阵的乘法、转置等运算。
05
MATLAB应用实例
数据分析与可视化
数据分析
使用MATLAB进行数据导入、清 洗、处理和分析,包括描述性统
计、可视化、假设检验等。
可视化
利用MATLAB的图形和可视化工 具,如散点图、柱状图、3D图等
数值求和与求积
演示如何对数值进行求和与求积 操作。
数值计算函数
介绍常用数值计算函数,如sin、 cos、tan等。
方程求解
演示如何求解线性方程和非线性方 程。
03
MATLAB编程基础
控制流
01
02
03
04
顺序结构
按照代码的先后顺序执行,是 最基本的程序结构。
选择结构
通过if语句实现,根据条件判 断执行不同的代码块。
数据分析
数值计算
MATLAB提供了强大的数据分析工具,支 持多种统计分析方法,可以帮助用户进行 数据挖掘和预测分析。
MATLAB可以进行高效的数值计算,支持 多种数值计算方法,包括线性代数、微积 分、微分方程等。
第六章 高级图形处理功能
H_GC=GraphicCommand(……,PS)
利用“构架”进行属性设置的绘图指 令
get 和 set 对象属性的缺省设置和查询 属性查询和设置示例
get 和 set
get(H) get(H,PN) set(H)
set(H,PN)
获取H句柄对象所有属性的当前值
获取H句柄对象由PN所指定属性的当前值 显示H句柄对象的所有可设置属性名和全 部供选属性值 显示H句柄对象PN指定属性名的全部供选 属性值 设置H句柄对象的PN属性名取PV 属性值
图形对象、对象句柄、句柄图形树结构
1、图形对象
把用于数据可视和界面制作的基本绘图要素称为句 柄图形对象(Handle graphics object)。 构成MATLAB句柄图形体系的13个图形对象见 P136/图6-1。 每个图形对象可以被独立地操作。 在MATLAB中生成的每个具体图形都由若干不同对 象构成。每个具体图形不必包含全部对象,但每个 图形必须具备根对象(根屏幕)和图形窗。
h=rectangle(’position’,[x,y,w,h],’curvature’[xc,yc]) x,y左下顶点坐标,w,h长方形的高和宽;xc,yc曲率
h=patch(’faces’,fac,’vertices’,vert) vert为顶点矩阵,fac为定义多边形的顶点序号矩阵 h=image(x) x为图像数据矩阵 h=text(x,y,’string’) x,y指定字符串string的标注位置 h=light(’position’,[1 0 0]) 设置入射光的方向。它影响面、块对象的渲染
interp
网线图线段,或曲面图贴片上各点的颜色由该线段两端,或该贴片四 顶点初的颜色经线性插值而得。这种方法的用色较细腻,但最费时。
《MATLAB的图形功能》课件
三维曲面图
三维散点图
三维曲面图适用于显示具有两 个自变量和一个因变量的数据, 并呈现数据的曲面特征。
三维散点图可用于展示三个变 量之间的关系,每个数据点表 示三个变量的数值。
数据可视化
1
数据可视化的基础
数据可视化是通过图形和图表来呈现和传达数据,帮助人们更好地理解和分析数 据。
基本的图形绘制
线性图
线性图用于表示数据之间的 关系及其趋势。它们可以显 示函数、数据集以及实验结 果的变化。
散点图
散点图用于显示两个变量之 间的关系。每个数据点表示 两个变量的数值,并可观察 它们之间的分布和相关性。
条形图
条形图用矩形的长度表示不 同类别或组之间的数值差异。 它们可以用于比较数据的大 小、展示排名等。
扩展的图形绘制
1
科学图形绘制
科学图形绘制包括绘制特定领域中的专业图表,如生物学中的柱状图和数学中的 函数图像。
2
矩阵图形绘制
矩阵图形绘制用于可视化二维或多维数据集的分布和关系,如热图和等值线图。
3
稀疏图形绘制
稀疏图形绘制用于可视化稀疏矩阵和网络结构,例如社交网络和电力网络。
MATLAB三维绘图
三维线性图
总结
MATLAB图形功能的应用
MATLAB的图形功能可以应用于各种领域,如 科学研究、工程设计和数据分析等。
学习资源推荐
通过阅读MATLAB官方文档、参加培训课程和 加入在线社区,您可以深入学习和掌握 MATLAB的图形功能。
MATLAB的应用领域
MATLAB在信号处理、图像处理、控制系统、 机器学习等ቤተ መጻሕፍቲ ባይዱ域中具有广泛的应用。
第六章 (2)MATLAB高级图形设计
。此时,Value数据就已经存储在句柄值为 ui_handle的对象内。
② 在执行的过程中若要取回该变量,可以通过以下 方式在任一Callback中获取该数据值:
Value=get(‘ui_handle’,’UserData’);
用的有hObject、 eventdata和 handles。
hObject:当前回调函数的图形对象句柄;
eventdata:预留的输入参数;
handles:存放图形窗口中所有图形对象句柄的结 构体,存储了所有在图形界面中的控件、菜单、 坐标轴对象的句柄,可以用于在function之间传 递数据。例如:handles.pushbutton1就是按钮 pushbuton1的句柄,handles.axes1就是axes1 的句柄。
global A;
25
多个回调函数之间变量的传递
方法二:直接通过对象的UserData属性来进行各个
C注al意lb:ack此之方间法的在数操据作存上取简操单作且。方便,但每个对
①象次于首设为仅变复先该V能量杂a必对存时的lu须象取,操e,一先作先的则个前会将句输变的造数柄入量 变 成据值以值 量 很存为下, 值 多储ui程因 就 不_到h序此 会 便一an即被当 。个d可覆同l特e盖一:,定掉对需的,象要对这存存象样储储中对两的,值假
➢string属性是按钮上显示的文字,默认的string属 性与Tag相同。
3.滚动条(Slider) (1)常用属性 滚动条的常用回调函数是callback,当每次单击滚动条
改变当前值时调用该函数。 (2)回调函数 常用属性有value、max、min和SliderStep。
MATLAB教学课件.ppt
例如,键入命令: A=[1 2 3;4 5 6;7 8 9] 输出结果是: A = 1 2 3
456
789
四. 矩阵运算
1.建立矩阵
3.图形功能
MATLAB提供了两个层次的图形命令:一种是对图形句柄进 行的低级图形命令,另一种是建立在低级图形命令之上的高 级图形命令。利用MATLAB的高级图形命令可以轻而易举地 绘制二维、三维乃至四维图形,并可进行图形和坐标的标识、 视角和光照设计、色彩精细控制等等。
4.应用工具箱
基本部分和各种可选的工MATLAB最基本的数据对象,MATLAB的大部分运算 或命令都是在矩阵运算的意义下执行的。在MATLAB中,不需 对矩阵的维数和类型进行说明,MATLAB会根据用户所输入的 内容自动进行配置。
1.建立矩阵
建立矩阵可以用:直接输入法、利用函数建立矩阵和利 用M文件建立矩阵。
一. MATLAB特点:
一. MATLAB特点:
1. 数值计算和符号计算功能
MATLAB的数值计算功能包括:矩阵运算、多项式和有 理分式运算、数据统计分析、数值积分、优化处理等。符 号计算将得到问题的解析解。
2.MATLAB语言
MATLAB除了命令行的交互式操作以外,还可以程序方式 工作。使用MATLAB可以很容易地实现C或FORTRAN语言的 几乎全部功能,包括Windows图形用户界面的设计。
基本部分中有数百个内部函数。
其工具箱分为两大类:功能性工具箱和学科性工具箱。 功能性工具箱主要用来扩充其符号计算功能、可视建模仿真 功能及文字处理功能等。学科性工具箱专业性比较强,如控 制系统工具箱、信号处理工具箱、神经网络工具箱、最优化 工具箱、金融工具箱等,用户可以直接利用这些工具箱进行 相关领域的科学研究。
matlab6 图像处理课件
2020/8/4
15
六、图像变换功能
图像变换技术是图像处理的重要工具,常运用 于图像压缩、滤波、编码和后续的特征抽取或 信息分析过程。
Matlab 工具箱提供了常用的变换函数,如 fft2( )与ifft2( )函数分别实现二维快速傅立叶变 换与其逆变换,dct2( )与idct2( )函数实现二维 离散余弦变换与其逆变换。
Matlab 还提供了如二值图像的膨胀运算 dilate( )函数、腐蚀运算erode( )函数等基于数 学形态学与二值图像的操作函数。
2020/8/4
16
七、 Matlab图像处理工具箱运用实例
为了说明Matlab 语言是一种简洁,可读性较 强的高效率编程软件,通过运用图像处理工具 箱中的有关函数,对一幅电路板的原图像 “ board.tif” 进行处理。该图像右边的剪切 图像为从“board.tif”中剪切出的将用于分析 的子图像块。为了便于分析与观察,把子图像 块旋转180 度置于水平位置并把该图存在名为 “board_new.bmp” 的图像文件中。
包括:
• BMP • HDF • JPEG
•PCX •TIFF •XWD
2020/8/4
6
三、常用图像操作
图像的读写与显示操作:用imread( )读取图像, imwrite( )输出图像。
图像显示于屏幕:imshow( ) 。 图像进行裁剪:imcrop( )。 图像的插值缩放:imresize( )。 图像的旋转:imrotate( ) 。
matlab6 图像处理课件
Matlab 图像处理工具箱———
Image Processing Toolbox
提高图像质量,使模糊的图像变得清晰; 提取图像的有效特征,以便进行模式识别; 通过图像变换和有效编码来压缩其频带或数据,
《Matlab教案》课件
《MATLAB教案》PPT课件第一章:MATLAB概述1.1 MATLAB简介介绍MATLAB的历史和发展解释MATLAB的含义(Matrix Laboratory)强调MATLAB在工程和科学计算中的应用1.2 MATLAB界面介绍MATLAB的工作空间解释MATLAB的菜单栏和工具栏演示如何创建、打开和关闭MATLAB文件1.3 MATLAB的基本操作介绍MATLAB的数据类型演示如何进行矩阵运算解释MATLAB中的向量和矩阵运算规则第二章:MATLAB编程基础2.1 MATLAB脚本编程解释MATLAB脚本文件的结构演示如何编写和运行MATLAB脚本强调注释和代码的可读性2.2 MATLAB函数编程介绍MATLAB函数的定义和结构演示如何创建和使用MATLAB函数强调函数的重用性和模块化编程2.3 MATLAB编程技巧介绍变量和函数的命名规则演示如何进行错误处理和调试强调代码的优化和性能提升第三章:MATLAB数值计算3.1 MATLAB数值解算介绍MATLAB中的数值解算工具演示如何解线性方程组和不等式解释MATLAB中的符号解算和数值解算的区别3.2 MATLAB数值分析介绍MATLAB中的数值分析工具演示如何进行插值、拟合和数值积分解释MATLAB中的误差估计和数值稳定性3.3 MATLAB优化工具箱介绍MATLAB优化工具箱的功能演示如何使用优化工具箱进行无约束和约束优化问题解释MATLAB中的优化算法和参数设置第四章:MATLAB绘图和可视化4.1 MATLAB绘图基础介绍MATLAB中的绘图命令和函数演示如何绘制二维和三维图形解释MATLAB中的图形属性设置和自定义4.2 MATLAB数据可视化介绍MATLAB中的数据可视化工具演示如何绘制统计图表和散点图解释MATLAB中的数据过滤和转换4.3 MATLAB动画和交互式图形介绍MATLAB中的动画和交互式图形功能演示如何创建动画和交互式图形解释MATLAB中的图形交互和数据探索第五章:MATLAB应用案例5.1 MATLAB在信号处理中的应用介绍MATLAB在信号处理中的基本概念演示如何使用MATLAB进行信号处理操作解释MATLAB在信号处理中的优势和应用场景5.2 MATLAB在控制系统中的应用介绍MATLAB在控制系统中的基本概念演示如何使用MATLAB进行控制系统分析和设计解释MATLAB在控制系统中的优势和应用场景5.3 MATLAB在图像处理中的应用介绍MATLAB在图像处理中的基本概念演示如何使用MATLAB进行图像处理操作解释MATLAB在图像处理中的优势和应用场景《MATLAB教案》PPT课件第六章:MATLAB Simulink基础6.1 Simulink简介介绍Simulink作为MATLAB的一个集成组件解释Simulink的作用:模型化、仿真和分析动态系统强调Simulink在系统级设计和多领域仿真中的优势6.2 Simulink界面介绍Simulink库浏览器和模型窗口演示如何创建、编辑和运行Simulink模型解释Simulink中的块和连接的概念6.3 Simulink仿真介绍Simulink仿真的基本过程演示如何设置仿真参数和启动仿真解释Simulink仿真结果的查看和分析第七章:MATLAB Simulink高级应用7.1 Simulink设计模式介绍Simulink的设计模式,包括连续、离散、混合和事件驱动模式演示如何根据系统特性选择合适的设计模式解释不同设计模式对系统性能的影响7.2 Simulink子系统介绍Simulink子系统的概念和用途演示如何创建和管理Simulink子系统解释子系统在模块化和层次化设计中的作用7.3 Simulink Real-Time Workshop介绍Simulink Real-Time Workshop的功能演示如何使用Real-Time Workshop进行代码解释代码对于硬件在环仿真和嵌入式系统开发的重要性第八章:MATLAB Simulink库和工具箱8.1 Simulink库介绍Simulink库的结构和分类演示如何访问和使用Simulink库中的块解释Simulink库对于模型构建和功能复用的意义8.2 Simulink工具箱介绍Simulink工具箱的概念和功能演示如何安装和使用Simulink工具箱解释Simulink工具箱在特定领域仿真和分析中的作用8.3 自定义Simulink库介绍如何创建和维护自定义Simulink库演示如何将自定义块添加到库中解释自定义库对于个人和组织级模型共享的重要性第九章:MATLAB Simulink案例分析9.1 Simulink在控制系统中的应用介绍控制系统模型在Simulink中的构建演示如何使用Simulink进行控制系统设计和分析解释Simulink在控制系统教育和研究中的应用9.2 Simulink在信号处理中的应用介绍信号处理模型在Simulink中的构建演示如何使用Simulink进行信号处理仿真解释Simulink在信号处理领域中的优势和实际应用9.3 Simulink在图像处理中的应用介绍图像处理模型在Simulink中的构建演示如何使用Simulink进行图像处理仿真解释Simulink在图像处理领域中的优势和实际应用第十章:MATLAB Simulink项目实践10.1 Simulink项目实践流程介绍从需求分析到模型验证的Simulink项目实践流程演示如何使用Simulink进行项目规划和实施解释Simulink在项目管理和协作中的作用10.2 Simulink与MATLAB的交互介绍Simulink与MATLAB之间的数据交互方式演示如何在Simulink中使用MATLAB函数和脚本解释混合仿真模式对于复杂系统仿真的优势10.3 Simulink项目案例分析具体的Simulink项目案例演示如何解决实际工程问题解释Simulink在工程教育和项目开发中的应用价值《MATLAB教案》PPT课件第十一章:MATLAB App Designer入门11.1 App Designer简介介绍App Designer作为MATLAB中的应用程序开发环境解释App Designer的作用:快速创建跨平台的MATLAB应用程序强调App Designer在简化MATLAB代码部署和用户交互中的优势11.2 App Designer界面介绍App Designer的用户界面和工作流程演示如何创建新应用和编辑应用界面解释App Designer中的组件和布局的概念11.3 App Designer编程介绍App Designer中的MATLAB编程模式演示如何使用App Designer中的MATLAB代码块解释App Designer中事件处理和应用程序生命周期管理的重要性第十二章:MATLAB App Designer高级功能12.1 App Designer用户界面设计介绍App Designer中用户界面的定制方法演示如何使用样式、颜色和主题来美化应用界面解释用户界面设计对于提升用户体验的重要性12.2 App Designer数据模型介绍App Designer中的数据模型和模型视图概念演示如何创建、使用和绑定数据模型和视图解释数据模型在应用程序中的作用和重要性12.3 App Designer部署和分发介绍App Designer应用程序的部署和分发流程演示如何打包和发布应用程序解释如何为不同平台安装和运行App Designer应用程序第十三章:MATLAB App Designer案例研究13.1 图形用户界面(GUI)应用程序设计介绍使用App Designer设计的GUI应用程序案例演示如何创建交互式GUI应用程序来简化MATLAB脚本解释GUI应用程序在数据输入和结果显示中的作用13.2 数据分析和可视化应用程序设计介绍使用App Designer进行数据分析和可视化的案例演示如何创建应用程序来处理和显示大型数据集解释App Designer在数据分析和决策支持中的优势13.3 机器学习和深度学习应用程序设计介绍使用App Designer实现机器学习和深度学习模型的案例演示如何将MATLAB中的机器学习和深度学习算法集成到应用程序中解释App Designer在机器学习和深度学习应用部署中的作用第十四章:MATLAB App Designer实战项目14.1 App Designer项目规划和管理介绍App Designer项目的规划和管理方法演示如何组织和维护大型应用程序项目解释项目管理和版本控制对于团队协作的重要性14.2 App Designer与MATLAB的集成介绍App Designer与MATLAB之间的数据和功能集成演示如何在App Designer中调用MATLAB函数和脚本解释集成MATLAB强大计算和分析能力的重要性14.3 App Designer项目案例实现分析具体的App Designer项目案例实现过程演示如何解决实际工程项目中的问题解释App Designer在工程项目实践中的应用价值第十五章:MATLAB App Designer的未来趋势15.1 App Designer的新功能和技术介绍App Designer的最新功能和技术发展演示如何利用新功能和技术提升应用程序的性能和用户体验强调持续学习和适应新技术的重要性15.2 App Designer在跨平台开发中的应用介绍App Designer在跨平台应用程序开发中的优势演示如何创建适用于不同操作系统的应用程序解释跨平台开发对于扩大应用程序市场的重要性15.3 App Designer的未来趋势和展望讨论App Designer在未来的发展趋势和潜在应用领域激发学生对于应用程序开发和创新的兴趣强调持续探索和创造新应用的重要性重点和难点解析本文档为您提供了一份详尽的《MATLAB教案》PPT课件,内容涵盖了MATLAB 的基本概念、编程基础、数值计算、绘图和可视化、应用案例、Simulink的基础知识、高级应用、库和工具箱的使用、案例分析以及项目实践、App Designer 的基础知识、高级功能、案例研究、实战项目和未来趋势等方面的内容。
MATLAB图形图像处理 ppt课件
(1)
(2)
x
(3)
图示
x y
x y
x
例: 设x为时间向量,运行下面的程序,画出以x为 横坐标,y为纵坐标的曲线,如图所示。
>> x=0:0.2:2*pi; >> y=sin(x); >> plot(x,y);
图 3.2 正弦曲线图
3.1 二维图形的绘制
用MATLAB绘图命令可以在图形窗口内画 出各种图形曲线,并使用不同的线型、颜 色、点型和标注来修饰这些图形曲线。
绘图的一般步骤
• 1. 曲线数据准备 • 2. 指定图形窗口和子图位置 • 3. 绘制图形 • 4. 设置坐标轴和图形注释 • 5. 仅对三维图形使用的着色和视点等设置 • 6. 图形的精细修饰 • 7. 按指定格式保存或导出图形
3.1.1 直角坐标系中的绘图
• plot命令:可用来绘制直角坐标系中的各种 曲线.
• 它的主要格式为: plot(y) plot(x,y) plot(x,y,’s’)
plot( )函数的应用形式:
plot(y)
y为向量 y为矩阵
plot(x,y)
x,y均为向量 一向量,一矩阵
x,y均为矩阵
plot(x1,y1,x2,y2,...)
6
% y1长度与x的行数相等
• >> y2=[1 1 1 1;2 2 2 2;3 3 3 3] • y2 = • 1111 • 2222 • 3333
• >>plot(x,y2);
plot(x,y,’s’)
• x,y情况和第二种一样,’s’是图形的属 性字符串,这些属性字符串包括三个方面, 第一方面指定图形曲线的颜色,第二方面指 定数据点的标记类型,第三方面指定线的类 型,将在3.1.3节中介绍。
06_第六讲_高级图形处理功能
13Biblioteka 【例6-2】 h=surf(sphere(30)); figure h=surf(sphere(30)); set(h,'EdgeColor','g')
14
【例6-3】作正弦、余弦曲线,将正弦曲线改为虚 线,将余弦曲线幅度减为1/2高度
1 0.8 0.6
0.4
0.2
0
-0.2
1
0 1 2 3 4 5 6 7
set(h,'Color','red') view(3)
24
25
6.3.2 流点图 streamparticles
streamparticles(vertices) 绘制矢量的流点图 , 流点由标记代表 , 可 以显示流线的位置和速率,vertices为一个 二维或三维矢量的单元数组
26
streamparticles(…,’PropertyName’,’Pro pertyValue’,…) 使用指定的属性和指定值控制流点.
句柄的值:是一个数或者一个矢量。
作用:利用句柄既可以操纵一个已经存在的 图形对象的属性,也可以在建立图形对象时指定 属性的值。
根屏幕 图形窗口 其它对象 0 整数,表示图形窗口序号 对应的实数
8
例:创建1号窗口,返回句柄
h=figure(1)
h=1 返回值为窗口号数 例:h=line (1:6,1:6) 创建线对象的同时也建立其唯一的句柄 例:h=surf(peaks)
35
2) 坐标轴对象(axes) 图形窗口中edit → axis → propertie 打开坐标轴对象参数设置窗口。
36
3)线对象(line) edit→Current Object properties, 打开线对 象参数设置窗口
第六章 MATLAB 绘图
第六章
MATLAB 绘图
1
MATLAB 绘图
matlab语言丰富的图形表现方法,使得数学计算结果可以
方便地、多样性地实现了可视化,这是其它语言所不能比 拟的。
–高层绘图函数
» 不需过多考虑绘图细节,只需给出一些基本参数 » 简单明了、方便高效 –低层绘图操作 » 将图形的每个元素(坐标轴、曲线、曲面或文字) 分配一个句柄,通过该句柄对该图形元素进行操作 » 控制和表现图形的能力更强
–当选项省略时,MATLAB规定,线型一律用实线,颜色将根据曲线的先后 顺序依次采用表中给出的前7种颜色。 –t=0:0.2:2*pi; –x=sin(t); –y=cos(t); –plot(t,x,'+r',t,y,'-b')
11
二维图形(续)
双纵坐标函数plotyy
– 将函数值具有不同量纲、不同数量级的两个函数绘制在同一坐标中,有 利于图形数据的对比分析。 – 调用格式为:plotyy(x1,y1,x2,y2)
MATLAB基础与编程入门(第二版)(张威)-第6章
第6章 图 形 基 础
并且可以在MATLAB命令行窗体中看到: >> plot(prices1, 'DisplayName', 'prices1',
'YDataSource', 'prices1'); figure(gcf) 其实这条指令就是绘制变量的MATLAB命令。 如果选择其他指令,例如选择hist,则得到的可视化结
第6章 图 形 基 础 6.2 交 互 式 绘 图
6.2.1 基本绘图 如前所述,实现数据可视化是需要有相应的步骤的,其中
的第一步骤就是准备绘制的数据。绘制的数据可以用MATLAB 的工具将必要的数据导入到MATLAB工作空间。也就是说,能 够进行可视化的数据实质都是保存在MATLAB工作空间中的变 量。本节将在MATLAB命令行窗体中键入下面的指令来创建用 户可视化的数据。
第6章 图 形 基 础
MATLAB的图形窗体主要包括如下几个部分: ·菜单栏:MATLAB的图形窗体一般包括一个菜单栏,利用 这个菜单栏可以完成对窗体中各种对象的基本操作,例如图形 的打印导出等。
·工具栏:图形窗体的工具栏用来完成对图形对象的一 般性操作,例如新建、打开、保存和打印,图形的旋转、缩放 等,还有对图形窗体的一些编辑操作也可以通过该工具栏完成。 具体操作将在后续的实例中依次介绍。
第6章 图 形 基 础
>> randn('state',27) >> startprice = 50; >> fracreturns1 = .0015*randn(200,1)+.0003; >> x = [startprice; 1+fracreturns]; >> prices1 = cumprod(x); >> t = (1:length(prices1))'; >> randn('state',7) >> fracreturns2 = .0015*randn(200,1)+.0003; >> x = [startprice; 1+fracreturns]; >> prices2 = cumprod(x);
matlab基础教程教学课件杨德平第6章程序设计
end 说明 每当循环变量variable取expression中的一个值时,就执行循环体 statements一次,直到取完expression中的值。expression常用数组形成 表示。
【例6-4】编写求100!的程序,利用公式k!=(k-1)!×k。 s=1; for k=1:100 s=s*k; end s 运行结果如下: s= 9.3326e+157
表6-3 各种运算符优先级排序
优先级 最高
最低
运算符 ()小括号 ’转置 .^ 数组乘方 ^ 矩阵乘方 逻辑非(not,~) .* 点乘 ./点除 乘法 除法 加减法 冒号 关系操作符(==,~=,>,>=,<,<=) 逻辑与(and,&) 逻辑或、逻辑异或6(/1or,xor,|)
首页
6.2. 顺序语句
and(a,b)
| 或(or)
or(a,b)
6/1
~ 非(not)
not(a,b)
异或(xor)
xor(a,b) 首页
尚 辅 网 shangfuwang
逻辑操作运算法则如下: (1)a&b或and(a,b):表示a和b作“逻辑与”运算,当a和b全为非零时,运算 结果为1,否则为0; (2)a|b或or(a,b):表示a和b作“逻辑或”运算,当a和b只要有一个非零,运 算结果为1,否则为0; (3)~a或not(a):表示对a作“逻辑非”运算,当a是零时,运算结果为1,否 则为0; (4)xor(a,b):表示a和b作“逻辑异或”运算,当a和b的值一个为零,一个不 为零时运算结果为1,否则为0。
例如,判断当a为偶数时,显示a是偶数,并计算a/2;否则不作任何处理。 If rem(a,2)==0 disp('a is even') b=a/2; end
[信息与通信]matlab 第6章 高级图形处理功能
(坐标轴) (控件) (菜单)
(对象菜单)
image light
line
(图像) (光源) (线)
HYIT
patch rectangle surface text (块) (矩形) (面) (文本)
8
各层次图形对象是相互关联的,一般要先 创建父对象,再创建子对象 .
HYIT
9
图形对象的类型
➢ 根对象:〔最顶层,相当于计算机屏幕,)根对 象不可以建立,在启动MATLAB时就自动创建,但 可以设置他的属性以控制图形的显示. ➢ 图形窗口对象 figure ➢ 坐标轴 控件 菜单 对象菜单 ➢ 图像 光源 线 块 矩形 面 文本
HYIT
2
高层绘图与底层绘图的区别
高层绘图函数——是对整个图形进行操作的,
图形每一部分的属性都是按缺省方式设置的, 充分体现了matlab语言的实用性.
底层绘图函数——可以定制图形,对图形的
每一部分进行控制,用户可以用来开发用户界 面以及各专业的专用图形.充分体现了matlab 语言的开发性
HYIT
句柄属性的设置与修改
get 获得句柄图形对象的属性 set 改变图形对象的属性
格式: get<h,`属性名`> 获得指定对象的指定的属性 get<h> 获得指定对象的全部属性 set<h,`属性名`,`属性值`> 设置指定对象的属性 set<h>: 显示指定对象的全部可设置属性及选项
HYIT
18
专用函数:
所有能创建图形对象的matlab函数都可给 出所创建图形对象的句柄
HYIT
16
例:创建1号窗口,返回句柄 h=figure<1> h=1 返回值为窗口号数
第六章_MATLAB图形处理功能.
第六章图形处理功能Chapter 6: The function of Image processingMATLAB作图1、作图前图形的初始设置作图前,对figure的大小,比例,以及坐标轴刻度,字体,等设置,这样不用在投稿后修改。
程序:%%%%%%%%%%%%%%%%%%%%%%plot your figure before%%%%%%%%%%%%%%%%%%%%%% figure resizeset(gcf,'Position',[100 100 260 220]);set(gca,'Position',[.13 .17 .80 .74]);figure_FontSize=8;set(get(gca,'XLabel'),'FontSize',figure_FontSize,'Vertical','top');set(get(gca,'YLabel'),'FontSize',figure_FontSize,'Vertical','middle');set(findobj('FontSize',10),'FontSize',figure_FontSize);set(findobj(get(gca,'Children'),'LineWidth',0.5),'LineWidth',2);解释:gcf 返回当前Figure 对象的句柄值。
gca 返回当前axes 对象的句柄值。
gco 返回当前鼠标单击的句柄值,该对象可以是除root 对象外的任意图形对象,并且Matlab 会把当前图形对象的句柄值存放在Figure 的CurrentObject属性中。
set(gcf,'Position',[100 100 260 220]);这句是设置绘图的大小,不需要到word里再调整大小。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
figure
surf(peaks(50))
2013-8-13 10
view(2)
第六章 高级图形处理功能
§6.2 视图与光照
6.2.2 光照
1 创建光源 handle=light(…)
light(‘PropertyName’,PropertyValue,…)
2013-8-13
11
例6-6
[x,y]=meshgrid(-8:.1:8);
set(h,’属性名’,‘属性值’) get(h,’属性名’,‘属性值’)
2013-8-13 7
第六章 高级图形处理功能
§6.1 图形句柄
例6-2 改变三维网格中网线的颜色。 例6-3 用鼠标确定曲线上点的位置。 (程序略)
2013-8-13
8
第六章 高级图形处理功能
§6.2 视图与光照
6.2.1 视图
MATLAB 程序设计教程
2013-8-13
1
第六章 高级图形处理功能
内容提要:matlab提供了低层函数,通 过这些低层函数可以对图形窗口的某些对 象的属性进行操作,为图形处理提供了极 大的灵活性。图形对象是图形系统最基本、 最底层的单元,详见下图:
2013-8-13
2
计算机屏幕 图形窗口
用户菜单§6.2 视Fra bibliotek与光照6.2.2 光照
2 选择光照模式 light flat lighting phong
lighting gouraud
lighting none
2013-8-13
13
例6-7
membrane shading flat light lighting phong
figure membrane shading flat light lighting phong lighting gouraud figure membrane shading flat light lighting phong lighting none
2013-8-13
%<2> %<3> %<4> %<5> %<6> %<7> %<8> %<9> %<10> %<11> %<12> %<13> %<14> %<15>
18
色图是图形窗口的属性.每个图形窗口只有 一个色图,见本例指令<3>;每个子图都能定义自己的 浓淡处理模式、照明模式、材质,但它们都只能定义 一次,如本例左子图相关指令为<4>~<9>,而右子图相 关定义指令为<10>~<13>;每个子图上可以设置多个 光源,如本例左子图只使用了1个默认设置光源,而右 子图使用了包括默认设置光源在内的3个形式,方向, 颜色不同的光源.
例6-10 影片动画实例
n=12; m=moviein(n); t=0:2/n*pi:4*pi; x=0:1/n*pi:4*pi; nj=length(x); for i=1:n for j=1:nj y(j)=sin(x(j)-t(i)); end plot(x,y) axis([0,4*pi,-1.5,1.5]); m(i)=getframe;end movie(m,20)
2013-8-13
5
第六章 高级图形处理功能
§6.1 图形句柄 获取句柄的函数 gcf gca jco
获取当前窗口的句柄(get current figure) 获取当前坐标轴的句柄(get current axis) 获取最近被单击的图形对象的句柄(get current object)
2013-8-13
r=sqrt(x.^2+y.^2)+eps; z=2*sin(r)./r; surf(x,y,z) shading interp;
daspect([5 5 1])
axis tight view(-50,30) light('position',[-10 -10 2])
2013-8-13 12
第六章 高级图形处理功能
§6.2 视图与光照
6.2.2 光照
4 材料的影响
meterial
说明:
设置材料的反射系数
2013-8-13
17
例6-9 灯光、照明、材质命令所表现的图形的实例
>>clf; %<1> >>[x,y,z]=sphere(40) >>colormap(jet) >>subplot(1,2,1); >>surf(x,y,z) >>shading interp >>light(‘position’,[0,-10,1.5],’style’,’infinite’) >>lighting phong >>material shiny >>subplot(1,2,2); >>surf(x,y,z,-z) >>shading flat >>light;lighting flat >>light(‘position’,[-1,-1,-2],’color’,’y’) >>light(‘pisition’,[-1,0.5,1],’style’,’local’,’color’,’w’)
说明:
2013-8-13
19
第六章 高级图形处理功能
§6.3 动画制作
Matlab提供了以循环方式来查看图片的功能, 这给图形增加了另一个维数,通常图形的次序不必 以任意的方式关联起来.
moviein
getframe
movie
M=moviein(n)
M(j)=getframe
2013-8-13
20
控制视图和旋转的函数 view(2) view([vx,vy,vz]) view(3) view(az,el)
仰角
方位角
2013-8-13 9
例6-5 不同视图下的图形
surf(peaks(50)) figure surf(peaks(50)) view(90,0) figure surf(peaks(50)) view(30,45)
2013-8-13 21
坐标轴
用户控件
曲线
2013-8-13
曲面
文本
图像
光源
区域块
方框
3
第六章 高级图形处理功能
§6.1 图形句柄 §6.2 视图与光照
2013-8-13
4
第六章 高级图形处理功能
§6.1 图形句柄 在创建每一个图形对象时,都会为该对象分配 唯一的一个值,称为图形对象句柄(Handle)。句 柄是图形对象的唯一标识符。 计算机屏幕作为根对象由系统自动建立,其句 柄值为0,而图形窗口对象的句柄值为一正整数, 并显示在该窗口的标题栏,其他图形对象的句柄为 浮点数。
[ax,el]=lightangle(light_handle)
2013-8-13 15
例6-9 t=0:pi/20:2*pi; [x y z]=cylinder(2+sin(t));
surf(x,y,z)
shading flat
lightangle(-50,30)
2013-8-13
16
第六章 高级图形处理功能
14
figure membrane shading flat light lighting phong lighting flat
2013-8-13
第六章 高级图形处理功能
§6.2 视图与光照
6.2.2 光照
3 球形坐标系中的光源
lightangle(az,el)
lightangle(light_handle,az,el) light_handle=hightang(az,el)
6
第六章 高级图形处理功能
§6.1 图形句柄
例6-1 自定义坐标轴的显示刻度
说明: 使用gca获取当前坐标轴对象的句柄, 用’xtick’属性设置x轴刻度位置(从-pi~pi,间隔 pi/2,只设5个点),用’xticklabel’来指定刻度的值, 这里使用set函数,是设置图形对象的属性值。 格式如下: