matlab初学习记录

文章目录

    • 内置函数与变量
    • matlab 编辑器
    • 数组
    • 等间距向量
    • 数组函数
    • 数组索引
      • 提取多个元素
    • 对向量执行数组计算
    • 查看文档
  • 画图
    • 添加注释
  • 实践
  • 导入数据
  • 关系运算符
  • 分支
  • 恒星运动

matlab 学习看入门之旅

先计算等号右边再计算等号左边。

工作区记录等号右边的变量。

; 表示的是抑制输出。不输出结果,但是工作区还是会记录的。

上下箭头能够返回之前的命令。

Snipaste_2024-07-26_15-06-10.png

Snipaste_2024-07-26_15-07-43.png

并没有重新计算。

Snipaste_2024-07-26_15-08-16.png

matlab 区分大小写,数字不能开头当变量。

save + 文件名字,可以将工作区的变量保存到 mat 文件中

如:save datafile 就是将工作区里的变量保存到 datafile.mat 文件中

clear 将工作区清空

load + 文件名字,能将文件中的变量加载到工作区中

输入变量名称能在控制台输出变量里面的内容。

clc 清空命令行窗口

Snipaste_2024-07-26_15-15-04.png

也能够保存或加载部分变量。

内置函数与变量

matlab 里面有些内置的量。

如 pi,sin,abs,eig,等等

matlab 中有虚数。

使用 format 函数控制显示精度。

Snipaste_2024-07-26_15-19-04.png

matlab 编辑器

.mlx

仅运行节,就只有节内的值会改变。

运行就是全部了。

数组

matlab 中的变量均为数组。

空格也行,也能区分。不一定非要用逗号隔开。

分号区分一行。

数组内部也可以使用函数进行计算。

等间距向量

使用冒号运算符

1:4 就是 1,2,3,4,

x=1:0.5:5 就是从 1 开始到 5 结束,每个数间隔 0.5,这个是用于知道向量的间隔时使用的。

知道元素数目是使用 linspace(_first_,_last_,_number_of_elements_) 该函数。

x = x' 能让变量转置。

可以通过创建行向量再进行转置来建立列向量。使用圆括号来指定运算的顺序。

请注意,如果您使用 linspace: 创建向量,则不需要使用方括号 ([])。

数组函数

x = rand(2)
x =
0.8147 0.1270
0.9058 0.9134

请注意,rand(2) 命令中的 2 指定输出将为一个 2×2 的随机数矩阵。数的取值是 0 到 1

rand (x, y) 生成 x 行,y 列的数组。

zeros (x, y) 生成 x 行,y 列全零矩阵。

size (x) 能够得到 x 变量代表的矩阵的大小。

数组索引

变量名(x, y)就是从该变量代表的数组中取第 x 行第 y 列的值。注意从 1 开始索引。

: 冒号表示整个,如 A(x,:)表示第 x 行的全部值。

end 表示最后,可以放到 x 表示最后一行,也可以放到 y 表示最后一列。也可以用来计算,例如 end-1 表示倒数第二行。

可以使用变量来作为索引。

提取多个元素

冒号前面的数得小于后面的数

对于行向量或者是列向量可以给一个值,就相当于数组取数,不过索引还是从 1 开始的。

Snipaste_2024-07-26_16-07-51.png

Snipaste_2024-07-26_16-10-52.png

Snipaste_2024-07-26_16-10-57.png

对向量执行数组计算

r = v 1 + 1 就是对 v 1 中的每个元素都加了个 1

* 乘法,这是矩阵乘法,

.* 元素乘法, 对应行,对应列的元素相乘。只有一列的话就是列乘列的。

\ 除法

max()函数能确定向量的最大值。

函数是可以对整个数组中的所有值都生效的。

size() 有两个输出,x, y。

例如 [dr,dc] = size(data)

使用 max 也是一样的,只不过返回的是最大值的索引。

[vMax,ivMax] = max(v2)

波浪号字符 (~) 忽略特定输出。

查看文档

Documentation - MATLAB & Simulink - MathWorks 中国

doc 函数可以直接打开文档。

Snipaste_2024-07-26_16-36-36.png

画图

使用 plot 函数画图

plot(x,y,“r–o”)

以上命令将会绘制一条红色 (r) 虚线 (--),并使用圆圈 (o) 作为标记。您可以在线条设定的文档中了解有关可用符号的详细信息。

请注意,每个绘图命令都创建了一个单独的绘图。要在一张图上先后绘制两条线,请使用 hold on 命令保留之前的绘图,然后添加另一条线。

启用保留状态时,将继续在同一坐标区上绘图。要恢复默认绘图行为,即其中每个绘图都有自己的坐标区,请输入 hold off

当您单独绘制一个向量时,MATLAB 会使用向量值作为 y 轴数据,并将 x 轴数据的范围设置为从 1n(向量中的元素数目)。

plot 函数接受可选的附加输入,这些输入由一个属性名称和一个关联的值组成。

plot(y,“LineWidth”,5) 后面的数字是线的宽度。

以上命令将绘制一条粗线。您可以在线条属性文档中了解更多可用属性的详细信息。

MATLAB Plot Gallery - MATLAB & Simulink (mathworks.cn)

添加注释

title(“Plot Title”) 添加标题。

ylabel(“Mass (g)”) 坐标轴的说明。

legend(“Exp A”,“Exp B”) 就是左上角的东西

Snipaste_2024-07-26_17-15-42.png

Snipaste_2024-07-26_17-15-45.png

可以拼接字符串。

Snipaste_2024-07-26_17-17-23.png

Snipaste_2024-07-26_17-17-27.png

实践

usage 有什么用?

size 返回的是两个值。

Snipaste_2024-07-26_19-15-14.png

我这里只用一个值去接 size 返回的值,爆出来上面的错误。

可以使用 fft 函数来计算向量的离散傅里叶变换。

fft(y)

f 将包含从 0fs 的频率。主频位于 f 的开头位置。您可以使用 xlim 函数放大所关注的区域。

xlim () 里面放个数组,(min,max)当然数组使用方括号包裹的。

这个限制的是 x 轴的范围。

Snipaste_2024-07-26_19-24-57.png

Snipaste_2024-07-26_19-24-59.png

将鼠标移到图上是有工具显示的。

Snipaste_2024-07-26_19-28-28.png

Snipaste_2024-07-26_19-29-09.png

可以点击更新代码。

Snipaste_2024-07-26_19-29-14.png

导入数据

一个表有列有行,列有列名,我们可以通过表名. 列名获得一列的数据。

我们也可以点一个不存在的列命,这就是创建了一列。

关系运算符

相等或不相等比较的结果为 1 (true) 或 0 (false)。返回的是数值。

可以使用关系运算符将某个向量或矩阵与单个标量值进行比较。结果是与原始数组相同大小的逻辑数组。

可以使用逻辑数组作为数组索引,在这种情况下,MATLAB 会提取索引为 true 的数组元素。

创建一个名为 `v` 的变量,其中包含 `v1` 中所有小于 4 的元素。
v = v1(v1 < 4)

还有别的符号

Snipaste_2024-07-26_19-42-33.png

sampleres = sample(sample < 20 & sample > 10)

Snipaste_2024-07-26_19-44-21.png

分支

跟 python 一样。

不过 if 后面要匹配个 end

for 循环跟 foreach 一样。

最后也是要匹配个 end

如果您要对未知长度的向量执行循环,可以改用 length 函数。

恒星运动

min 函数可以带有两个输出,其中第二个输出为最小值的索引。

控件里面可以添加一些小工具。

loglog 跟 plot 差不多

https://lcms-files.mathworks.com/content/file/58a713b5-fa72-4ba7-8cba-7eb17bb7a331/addcontrol.gif?versionId=KtQYyLWOVTryBMRgPTDltGyd4z7daawj

legend(starnames)

legend 可以写一个数组的。

Snipaste_2024-07-26_20-30-31.png

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/437116.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

微服务SpringSession解析部署使用全流程

目录 1、SpringSession简介 2、实现session共享的三种方式 1、修改Tomcat配置文件 2、Nginx负载均衡策略 3、redis统一存储 0、准备工作 1、本地服务添加依赖 2、修改本地服务配置文件 3、添加application.properties文件 4、添加nacos - redis配置 5、修改本地项目…

【Android 14源码分析】WMS-窗口显示-第一步:addWindow

忽然有一天&#xff0c;我想要做一件事&#xff1a;去代码中去验证那些曾经被“灌输”的理论。                                                                                  – 服装…

kubeadm部署k8s集群,版本1.23.6;并设置calico网络BGP模式通信,版本v3.25--未完待续

1.集群环境创建 三台虚拟机&#xff0c;一台master节点&#xff0c;两台node节点 (根据官网我们知道k8s 1.24版本之后就需要额外地安装cri-dockerd作为桥接才能使用Docker Egine。经过尝试1.24后的版本麻烦事很多&#xff0c;所以此处我们选择1.23.6版本) 虚拟机环境创建参考…

Stream流的初步认识,Stream流的思想和获取Stream流

一.Stream流的作用 package com.njau.my_stream;import java.util.ArrayList;/*** 目标&#xff1a;认识Stream流* 案例&#xff1a;将以“张”开头的人名筛选出来到一个新的集合中去&#xff0c;再将其中三个字的名字的筛选出来到新集合中去*/ public class StreamDemo1 {pub…

智慧农业案例 (一)- 自动化机械

橙蜂智能公司致力于提供先进的人工智能和物联网解决方案&#xff0c;帮助企业优化运营并实现技术潜能。公司主要服务包括AI数字人、AI翻译、领域知识库、大模型服务等。其核心价值观为创新、客户至上、质量、合作和可持续发展。 橙蜂智农的智慧农业产品涵盖了多方面的功能&…

【JavaSE】反射、枚举、lambda表达式

目录 反射反射相关类获取类中属性相关方法常用获得类相关的方法示例常用获得类中属性相关的方法示例获得类中注解相关的方法 反射优缺点 枚举常用方法优缺点 枚举与反射lambda表达式语法函数式接口简化规则使用示例变量捕获集合中的应用优缺点 反射 Java的反射&#xff08;refl…

【Python报错已解决】KeyError: ‘key‘

&#x1f3ac; 鸽芷咕&#xff1a;个人主页 &#x1f525; 个人专栏: 《C干货基地》《粉丝福利》 ⛺️生活的理想&#xff0c;就是为了理想的生活! 专栏介绍 在软件开发和日常使用中&#xff0c;BUG是不可避免的。本专栏致力于为广大开发者和技术爱好者提供一个关于BUG解决的经…

师生健康信息管理:SpringBoot技术突破

第4章 系统设计 4.1 系统体系结构 师生健康信息管理系统的结构图4-1所示&#xff1a; 图4-1 系统结构 登录系统结构图&#xff0c;如图4-2所示&#xff1a; 图4-2 登录结构图 师生健康信息管理系统结构图&#xff0c;如图4-3所示。 图4-3 师生健康信息管理系统结构图 4.2…

若依从redis中获取用户列表

因为若依放入用户的时候&#xff0c;会在减值中添加随机串&#xff0c;所以用户的key会在redis中变成&#xff1a; login_tokens:6af07052-b76d-44dd-a296-1335af03b2a6 这样的样子。 如果用 Set<Object> items redisService.redisTemplate.keys("login_tokens&…

基于ROS的激光雷达点云物体检测

环境 RTX 2060&#xff08;后面关于算力&#xff09; ubuntu 18.04 ROS melodic &#xff08;ubuntu 18.04安装ROS melodic可以参看我这篇文章ubuntu 18.04安装ROS系统&#xff09; CUDA 10.0 cudnn 7.6.5 caffe cmake 3.18.0&#xff08;不能低于3.12.2&#xff09; opencv 3…

uniapp 常用高度状态栏,导航栏,tab栏,底部安全高度

实际效果 使用 //使用 let posConfig this.getPosConfig(); // 传false返回值为 px大小 console.log(posConfig.safeBottomH) // 入参 是否转换为rpxgetPosConfig(toRpx true) {const systemInfo uni.getSystemInfoSync();// #ifdef MPconst menuButtonInfo uni.getMenuBu…

Leecode热题100-48.旋转图像

给定一个 n n 的二维矩阵 matrix 表示一个图像。请你将图像顺时针旋转 90 度。 你必须在 原地 旋转图像&#xff0c;这意味着你需要直接修改输入的二维矩阵。请不要 使用另一个矩阵来旋转图像。 示例 1&#xff1a; 输入&#xff1a;matrix [[1,2,3],[4,5,6],[7,8,9]] 输出…

Docker 安装 Citus 单节点集群:全面指南与详细操作

Docker 安装 Citus 单节点集群&#xff1a;全面指南与详细操作 文章目录 Docker 安装 Citus 单节点集群&#xff1a;全面指南与详细操作一 服务器资源二 部署图三 安装部署1 创建网络2 运行脚本1&#xff09;docker-compose.cituscd1.yml2&#xff09;docker-compose.cituswk1.…

YOLOv8改进,YOLOv8改进主干网络为GhostNetV3(2024年华为的轻量化架构,全网首发),助力涨点

摘要 GhostNetV3 是由华为诺亚方舟实验室的团队发布的,于2024年4月发布。 摘要:紧凑型神经网络专为边缘设备上的应用设计,具备更快的推理速度,但性能相对适中。然而,紧凑型模型的训练策略目前借鉴自传统模型,这忽略了它们在模型容量上的差异,可能阻碍紧凑型模型的性能…

基于单片机语音智能导盲仪仿真设计

文章目录 前言资料获取设计介绍设计程序具体实现截图设计获取 前言 &#x1f497;博主介绍&#xff1a;✌全网粉丝10W,CSDN特邀作者、博客专家、CSDN新星计划导师&#xff0c;一名热衷于单片机技术探索与分享的博主、专注于 精通51/STM32/MSP430/AVR等单片机设计 主要对象是咱们…

发现一款适合所有用户小巧且强大的编辑器(完美替换Windows记事本)

文章目录 📖 介绍 📖🏡 演示环境 🏡📒 编辑器 📒📝 功能亮点📝 适用场景📝 安装使用📝 替换Windows记事本🎈 获取方式 🎈⚓️ 相关链接 ⚓️📖 介绍 📖 今天,发现一款小巧(仅1.26M)且功能强大的编辑器,适用于文本编辑,编程开发等,应该说是适…

负载均衡(Load Balancing)是一种计算机技术,用于在网络应用中分配工作负载,以优化资源使用、最大化吞吐量、减少响应时间以及避免过载。

负载均衡&#xff08;Load Balancing&#xff09;是一种计算机技术&#xff0c;用于在网络应用中分配工作负载&#xff0c;以优化资源使用、最大化吞吐量、减少响应时间以及避免过载。通过将任务均匀地分布在多个组件上&#xff0c;如服务器、网络链接、CPU、硬盘等&#xff0c…

Linux安装RabbitMQ安装

1. RabbitMQ介绍 1.1 RabbitMQ关键特性 异步消息传递&#xff1a;允许应用程序在不直接进行网络调用的情况下交换消息。 可靠性&#xff1a;支持消息持久化&#xff0c;确保消息不会在系统故障时丢失。 灵活的路由&#xff1a;支持多种路由选项&#xff0c;包括直接、主题、…

G502 鼠标自定义(配合 karabiner)

朋友送了我一个 G502 多功能鼠标&#xff0c;除了鼠标正常的左键、右键和滑轮外&#xff0c;额外提供了 6 个按键&#xff0c;并且滑轮可以向左、向右、向下按下&#xff0c;共计 9 个自定义的按键。 虽然是 karabiner 的老用户&#xff0c;但一直在使用 TrackPad&#xff0c;所…

Disco公司的DBG工艺详解

知识星球里的学员问&#xff1a;可以详细介绍下DBG工艺吗&#xff1f;DBG工艺的优势在哪里&#xff1f; 什么是DBG工艺&#xff1f; DBG工艺&#xff0c;即Dicing Before Grinding&#xff0c;划片后减薄。Dicing即金刚石刀片划切&#xff0c;Grinding即背面减薄&#xff0c;…