matlab学习笔记(流程控制结构、函数、二维图形的绘制、三维图形绘制)

matlab在科学计算中的应用1 一MATLAB 基本命令简介 二MATLAB 程序设计语言基础 数值型数据结构 符号型变量数据类型 MATLAB支持的其它数据结构 MATLAB 的基本语句结构 三基本数学运算 矩阵的代数运算 矩阵的逻辑运算 矩阵的比较运算 解析结果的化简与变换 基本数论运算 四MATLAB 语言流程控制 循环结构 转移结构 开关结构 试探结构 五MATLAB 函数的编写 MATLAB 语言的函数的基本结构 可变输 阅读详情

流程控制结构

循环结构

for 循环结构

for i = v, loop program body, end

其中v是一个向量,循环时每次从v中去一个数值,直到v向量中所有量都被取完了。

while 循环结构

while(condition)
	loop structure body,
end

测试程序运行时间可以用,tic、toc语句

条件转移结构

if (condition1)
	statement group 1
elseif (condition2)
	statement group 2
else 
	statement group 3
end

开关结构

switch switch_expression
case expression 1, staements 1
case {expression 2, expression 3, ... , expression m}, statement 2
......
otherwise, statements n
end

函数

函数的基本格式:

function [outputArg1,outputArg2]=function_name(inputArg1,inputArg2)
% UNTITLED Summary of this function goes here
% Detailed explanation goes here
outputArg1 = inputArg1;
outputArg2 = inputArg2;
end

nargin、nargout:检测输入和返回变量的个数。
判断一个是否是非负整数: abs(n - floor(n))>eps|n<0

二维图形的绘制

一般二维图形绘制

plot(x,y)

分段函数的绘制方法:互斥条件
可以使用点乘的形式来绘制互斥条件的分段函数。
例:
y = { 1.1 s i g n ( x ) , ∣ x ∣ > 1.1 x , ∣ x ∣ ⩽ 1.1 y=\begin{cases} 1.1sign(x), |x|>1.1\\ x, |x|\leqslant1.1 \end{cases} y={1.1sign(x),∣x∣>1.1x,∣x∣⩽1.1​

>> x = [-2:0.02:2];
>> y = 1.1*sign(x).*(abs(x)>1.1)+x.*(abs(x)<=1.1);
>> plot(x,y)

改变曲线的性质:
plot(x, y, 'option 1')
line type: ‘-’ , ‘–’ , ‘:’ , ‘-.’
colour::b, g, m, w, c, r, y
marks::’*’ , ‘.’ , ‘x’ , ‘v’ , ‘^’ , ‘>’
可以通过get()、set()来获取和更改对象属性
如果遇到两条曲线的幅值相差悬殊,可以调用双纵轴绘制函数plotyy()

特殊二维图形绘制

  1. 多子图:subplot (m,n,k) 一个窗口划分成mn个小块,每个小块存放一个子图,k是子图的编号。 编号规则是: 从左到右边,从上到下依次编号。

  2. 双纵坐标函数plotyy
    在Matlab中,如果需要绘制出具有不同纵坐标标度的两个图形,可以使用plotyy函数,它能把具有不同量纲,不同数量级的两个函数绘制在同一个坐标中,有利于图形数据的对比分析。使用格式为:plotyy(x1,y1,x2,y2)
    x1,y1对应一条曲线,x2,y2对应另一条曲线。横坐标的标度相同,纵坐标有两个,左边的对应x1,y1数据对,右边的对应x2,y2。

  3. 极坐标图
    polar函数用来绘制极坐标图,调用格式为:
    polar(theta,rho,option)
    其中,theta为极坐标极角,rho为极径,option的内容和plot函数相似。

  4. 对数坐标图
    在实际应用中,经常用到对数坐标,Matlab提供了绘制对数和半对数坐标曲线的函数,其调用格式为:
    semilogx(x1,y1,z1,option1,x2,y2,z2,option2,...)
    semilogy(x1,y1,z1,option1,x2,y2,z2,option2,...)
    loglog(x1,y1,z1,option1,x2,y2,z2,option2,...)

三维图形绘制

plot3(x1,y1,z1,option1,x2,y2,z2,option2,...)
绘制三维轨迹图:comet3(x,y,option)
例:

>> t = 0:0.1:2*pi;
>> x = t.^3.*sin(3*t).*exp(-t);
>> y = t.^3.*cos(3*t).*exp(-t);
>> z = t.^2;
>> plot3(x,y,z)
>> grid

在这里插入图片描述

>> stem3(x,y,z);
>> hold on;
>> plot3(x,y,z),grid;
>> hold off
>> grid
>> figure;
>> grid
>> comet3(x,y,z)

hold on,保持上一张图并在此基础上绘制。
在这里插入图片描述

三维曲面绘制

>> [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)
>> figure
>> surf(x,y,z)

先用meshgrid()创建一个平面x,y范围
mesh绘制3d图,surf绘制表面涂
在这里插入图片描述
在这里插入图片描述

参数方程绘制(Mobius带)

syms u v;
x=cos(u)+v*cos(u)*cos(u/2);
y=sin(u)+v*sin(u)*cos(u/2); 
z=v*sin(u/2); 
ezsurf(x,y,z,[0,2*pi,-0.5,0.5])

参数方程使用ezsurf绘制
ezsurf (fx,fy,fz,[um,uM,vm,vM])

球的绘制

>> subplot(2,2,1)
>> [x,y,z]=sphere(10);
>> surf(x,y,z)
>> subplot(2,2,2)
>> [x,y,z]=sphere(20);
>> surf(x,y,z)
>> subplot(2,2,3)
>> [x,y,z]=sphere(40);
>> surf(x,y,z)
>> subplot(2,2,4)
>> [x,y,z]=sphere(80);
>> surf(x,y,z)

在这里插入图片描述
绘制的球半径默认为1,如果要设置绘制的球的半径和圆心如下:
x1 = Rx+ox
y1 = R
y+oy
z1 = R*z+oz
[x1,y1,z1] = sphere(20)

绘制柱面

>> z0=-1:0.1:3;
>> r=exp(-z0.^2/2).*sin(z0);
>> [x,y,z]=cylinder(r); z=-1+4*z; 
>> surf(x,y,z)

其中z = -1+4*z是对生成的柱面进行延展以达到需要的坐标范围,因为3D图默认0-1
在这里插入图片描述

备战数学建模4-MATLAB绘制三维图形 目录 一、MATLAB绘制三维曲线 1-plot3()函数的基本用法 2-fplot3()函数绘制三维曲线 二、MATLAB绘制三维曲面 1-平面网格数据的生成 2-mesh()函数和surf()函数的用法 3-meshc()函数、meshz()函数、surfc()函数、surfl()函数的用法 4-sphere()函数和cylinder()函数的用法 5-fsurf()函数和fmesh()函数得用法 一、MATLAB绘制三维曲线 1-plot3()函数的基本用法 ... 阅读详情

相关推荐

MATLAB图形绘制(二维、三维)程序

matlab的图形绘制程序,包括二维图和三维图,较基础,非常适合初学者使用。

MTALAB学习笔记——二三维图像的基本画法

MATLAB学习笔记1 MATLAB是用于数学建模的一个软件,其名称为“matrix laboratory”(矩阵实验室)的缩写。顾名思义,MATLAB主要解决数学矩阵和图像相关的问题,其工作区与python类似,代码与C语言类似。 ...

go_bananas的博客 4382

求解2维NS方程的Matlab源程序

2D NS方程求解Matlab源程序<br>有用户界面<br>非结构化网格<br>Matlab与C混合编程

MATLAB 绘制三维图 | 附多个实例

绘制三维图

陌雨’的博客 8万+

matlab材料力学剪力图弯矩图绘制程序

matlab程序仿真材料力学剪力弯矩公式

使用Matlab画出导体球在均匀电场中的电场和电势分布3D图

使用Matlab画出导体球在均匀电场中的电场和电势分布3D图 本资源为Matlab代码,其中包含了电动力学、概率论的一些知识,运行这个程序可以形象的描绘导体球在均匀电场中的电场和电势。

matlab中的ezsurf函数

随时随地阅读更多技术实战干货,获取项目源码、学习资料,请关注源代码社区公众号(ydmsq666) 一个好用的用来绘制3D有色表面图的函数 语法 ezsurf(f) ezsurf(f,domain) ezsurf(x,y,z) ezsurf(x,y,z,[smin,smax,tmin,tmax]) or ez...

孤云博客 2万+

基于MATLAB的GUI绘制任意函数的曲线

文件包含源程序m文件,打开m文件直接运行即可。在函数对应的框内输入类似 y =sin(x)格式的函数,其他编辑框按照个人选择的数字输入就,点击绘制即可出图。这个GUI界面采用编辑器生成,网上有类似的guide生成的界面,但是无法运行成功,后来在原来的基础上做了一些改进,可以成功运行。 原GUIDE生成界面的文章链接:https://blog.youkuaiyun.com/qq_42777804/article/details/102367569

matlab求两向量夹角_Matlab课后答案第四章

“m文件是matlab程序的容器。”01—学会使用函数m文件,程序m文件;区别:函数m文件调用需要传入参数函数m文件可以在命令行调用,也可以在程序m文件中调用02—一、选择题1.下列关于脚本文件和函数文件的描述中不正确的是( )。 AA.函数文件可以在命令行窗口直接运行B.去掉函数文件第一行的定义行可转变成脚本文件C.脚本文件可以调用函数文件D.函数文件中的第一行必须以f...

weixin_39616686的博客 2049

滚动轴承振动信号特征解析与故障诊断模型构建

本文深入解析了滚动轴承振动信号的三大来源与特征,并详细阐述了从时域、频域到时频域的特征提取方法。通过构建基于机器学习(如随机森林、SVM)或深度学习的故障诊断模型,结合实战代码示例,为设备维护工程师提供了一套从信号分析到智能诊断的完整解决方案,旨在实现精准的故障识别与预测性维护。

qsc901234567的博客 368

稳定双共轭梯度法BiCGSTAB流程

稳定双共轭梯度法BiCGSTAB流程

abner361的博客 1154

【第2章】matlab程序设计基础

matlab语言的常量与变量 matlab语言的变量命名规则 由一个字母引导,后面可以为其他字符。 区分大小写 如Abc ≠ ABc matlab的保留常量 以下为系统保留常量,自己定义的变量不能与他们重名 eps %表示机器的精度,其值通常在10^-16左右 i %虚数单位,表示根号-1 j %同i pi %表示常量π NaN %不定式,如∞/∞或者0/0的结果 Inf %表示无穷大 lastwarn lasterr matlab语言的数据结构 数值型数据 matl

qq_43773662的博客 3574

机器学习【学校智慧食堂及其应用】

本文主要介绍机器学习【智慧食堂及其应用】

qq_201729558 2571

【数学建模】MATLAB

MATLAB一、基本介绍二级目录三级目录二、矩阵运算三、编程基础(1)四、编程基础(2)五、常见函数六、二维图形绘制七、三维图形绘制八、运算符九、流程控制语句十、其他常用函数十一、自定义函数十二、画图进阶 一、基本介绍 二级目录 三级目录 二、矩阵运算 三、编程基础(1) 四、编程基础(2) 五、常见函数 六、二维图形绘制 七、三维图形绘制 八、运算符 九、流程控制语句 十、其他常用函数 十一、自定义函数 十二、画图进阶 ...

斯基的朦胧 2325

超详细 | 贝叶斯网络基础——有图有真相

Hello,大家好,我是starz。这是本系列的第二篇《概率基础Ⅱ》,虽说是概率基础,但作为过渡,它开始以图为载体 这节的主要内容有: 贝叶斯网络 三种结构 D-划分 贝叶斯球 马尔科夫毯 应用例子 总结 让我们开始吧 :3 贝叶斯网络 概率图模型可笼统分为两类,一是基于无向图的马尔科夫网络: 二是基于有向图的贝叶斯...

qq_41603411的博客 2万+

199、影像技术 roadmap 规划:未来移动影像的技术趋势与芯片算力展望

本文探讨了未来移动影像技术的发展趋势与芯片算力规划。作者从实际案例出发,指出影像技术演进需平衡传感器、ISP、算力和功耗。文章分为三部分:1)传感器将从堆像素转向提升信息密度,重点关注双层晶体管结构、混合快门和多光谱技术;2)ISP架构将向可编程计算单元转型,强调神经网络加速、硬件化多帧融合和语义处理;3)芯片算力瓶颈在于数据搬运,需优化存算一体架构、专用DMA和统一内存。最后给出五点建议:避免盲目追高像素、重视持续功耗、平衡ISP灵活性、预留算力余量、加强传感器与ISP协同设计。作者强调,影像技术的突破在

sundong_81的博客 60

matlab常用函数库

数据分析和傅里叶变换函数库(datafun)三维图形和光照函数库(graph3d)特殊图形函数库(specgraph)写入WAVE(".wav")声音文件。读出WAVE(".wav")声音文件。矩阵和线性代数函数库(matfun)多项式和插值函数库(polyfun)通用图形函数库(graphics)for、while、if语句的终点。时间和日期函数库(timefun)二维图形函数库(graph2d)易用的mesh/等高线组合绘图器。通用命令函数库(general)基本矩阵和矩阵运算(elmat)

weixin_44029757的博客 5040

LeRobot 官方论文:一个用于端到端机器人学习的开源库

本文介绍了一个名为LeRobot的开源库,旨在解决机器人学习领域的碎片化问题。该库提供了端到端的技术栈,包括统一的机器人中间件API、标准化的数据集格式(LeRobotDataset)、优化的推理栈以及多种最先进机器人学习算法的实现。LeRobot支持多种低成本开源机器人平台(如SO-10X、ALOHA-2等),通过共享中间件实现便捷的遥操作和数据收集。其数据集格式已广泛应用于社区,截至2025年9月已有16,000多个数据集公开共享。该库还支持流式处理大规模数据,降低了研究门槛。在模型方面,LeRobot

2506_90492529的博客 906

matlab 论坛 gui,综合交流-【枫叶分享之一】精通matlab-GUI图形界面编程-施晓红-电路城论坛 - 电子工程师学习交流园地...

本帖最后由 fengye5340 于 2012-12-16 14:17 编辑内容简介本书主要介绍MATLAB的图形绘制和用户图形界面实现技术。全书主要由三个部分组成:MATLAB 语言介绍、MATLAB二维和三维图形绘制方法以及GUI的开发与应用。书中通过大量的实例深入浅出地介绍了MATAR二维、三维曲线和曲面图形的绘制方法以及图形用户界面的设计和编程,可以帮助MdDLAB设计人员完成各种特征数据...

weixin_30767945的博客 269

ESP32-CAM 赋能 AI 视觉巡检小车:自主避障与目标追踪实现全解析

本文基于 ESP32-CAM 实现了低成本 AI 视觉巡检小车的核心功能,硬件成本<100 元,兼顾自主避障与目标追踪。算法升级:移植 YOLOv5nano 量化模型(INT8),提升目标检测精度(如识别巡检场景中的 “异常物体”“人员”);无线拓展:通过 MQTT 协议将巡检图像、距离数据上传到阿里云 / 腾讯云,实现远程监控;多传感器融合:增加温湿度(DHT11)、红外测温(MLX90614)模块,扩展巡检维度;路径规划:结合 SLAM 算法,实现自主建图与路径巡检。

weixin_42300449的博客 368

一文搞懂 JavaScript 模块化规范:CommonJS、AMD、ES6 Module

在现代 JavaScript 开发中,模块化是提升代码组织性和可维护性的关键。本文深入解析三种主流的模块化规范——CommonJS、AMD 和 ES6 Module。

Allen- 3479

MATLAB基础语法与图形绘制:从矩阵运算到数据可视化实战

科学计算与数据分析是现代工程研究的核心环节,其本质是通过数学模型和算法处理复杂数据。MATLAB作为矩阵实验室,其底层设计哲学围绕矩阵运算优化,通过向量化操作实现高效计算。这种设计为控制系统仿真、信号处理等工程应用提供了强大的数值计算能力。数据可视化是分析结果呈现的关键技术,能够将抽象数据转化为直观图形,帮助研究人员洞察规律。本文聚焦MATLAB基础语法与图形绘制,深入解析变量定义、流程控制等核心概念,并详细讲解plot函数、subplot布局等可视化技巧。通过预分配数组、向量化编程等工程实践,提升代码效率

weixin_30263073的博客 343

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

Matlab入门基础详解

第一章  Matlab中的数组操作 matlab中的运算和操作是以数组为对象的, 数组又包括:数值数组、字符数组、元胞数组等。 数值数组:(1)n元数值向量(行向量与列向量)                   (2)数值矩阵                   (3)由数值矩阵构成的元胞数组 几个标点符号的作用: 逗号:用来分开数组中的行元素。(可用空格代替) 分号:用来将矩阵中...

weixin_43731886的博客 1850

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

ssm框架搭建

这个是一个在idea上成功跑起来的ssm框架项目,保存在这里方便以后使用直接下载

Matlab基本语法和基本操作

1.2.1 变量赋值: 一般形式: 变量 = 表达式(数) a = [1 2 3 ; 4 5 6 ; 7 8 9 ] %矩阵形式赋值. a = 1:2:10 %固定步长的矩阵. zeros(3,2) %三行两列的全零矩阵. who % 检查工作空间的变

bytxl的专栏 3万+

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

matlab 生孙函数什么意思,matlab实验报告——孙宏瑞.doc

matlab实验报告——孙宏瑞郑州航空工业管理学院实验报告册张高广章张 杨 编著课程名称 数值计算与仿真学 号 130507125姓 名 孙宏瑞 名郑 州 航 空 工 业 管 理 学 院 工 业 工 程 实 验 室IE LAB OF ZHENGZHOU INSTITUTE OF AERONAUTICAL INDU...

weixin_39748183的博客 384

matlab hilb,MATLAB在科学计算中的应用:第2章 MATLAB 语言程序设计基础

《MATLAB在科学计算中的应用:第2章 MATLAB 语言程序设计基础》由会员分享,可在线阅读,更多相关《MATLAB在科学计算中的应用:第2章 MATLAB 语言程序设计基础(72页珍藏版)》请在人人文库网上搜索。1、第二章 MATLAB 语言程序设计基础,MATLAB 语言的简洁高效性 MATLAB 语言的科学运算功能 MATLAB 语言的绘图功能 MATLAB 庞大的工具箱与模块集 MAT...

weixin_32049741的博客 672
上一篇: python学习笔记(文件、上下文管理器、print()方法的的补充)
下一篇: python学习笔记(排序、计算表达式 、all()、any()、 枚举函数 、zip打包函数、 set() 函数、 过滤器filter、 打印时间、 等分list)
leeyns
博客等级 码龄9年 18粉丝 44原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

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

抵扣说明:

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

余额充值