当前位置: 首页 > news >正文

零基础学习Matlab,适合入门级新手,了解Matlab

一、认识Matlab

Matlab安装请参见博客 安装步骤

1.界面

在这里插入图片描述

2.清空环境变量及命令

(1)clear all :清除Workspace中的所有变量

(2)clc:清除Command Window中的所有命令

二、Matlab基础

1.变量命名规则

(1)变量名区分大小写;

(2)变量名长度不超过63位;

(3)变量名以字母开头,可以由字母、数字和下划线组成,但不能使用标点;

(4)变量名应简介明了,通过变量名可以直观看出变量所表示的物理意义;

2.注释

%% 注释一行,会出现横线
% 注释不出现横线

在这里插入图片描述

3.Matlab数据类型

(1)数字

(2)字符与字符串

(3)矩阵

%矩阵
A = [1 2 3;4 5 6 ;7 8 9]
B = A'
C = A(:) %将矩阵竖着取出来
D = inv(A) %求逆,矩阵必须为方阵

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

E = zeros(10,5,3) %三维度
%下面输出 E(:,:,1)表示第一维

在这里插入图片描述

rand、randi、randn的区别?

1.rand生成均匀分布的伪随机数。分布在(0~1)之间

主要语法:rand(m,n)生成m行n列的均匀分布的伪随机数;rand(m,n,‘double’)生成指定精度的均匀分布的伪随机数,参数还可以是‘single’;rand(RandStream,m,n)利用指定的RandStream生成伪随机数

2.randn生成标准正态分布的伪随机数(均值为0,方差为1)

主要语法:同上

3.randi生成均为分布的伪随机整数

主要语法:randi(iMax)在区间(0,iMax)生成均为分布的伪随机整数;randi(iMax,m,n)在区间(0,iMax)生成m X n型随机矩阵;randi([iMin,iMax],m,n)在区间(iMin,iMax)生成m X n型随机矩阵

E(:,:,1) = rand(10,5)
E(:,:,2) = randi(5, 10,5)
E(:,:,3) = randn(10,5)

在这里插入图片描述

(4)元胞数组

元胞数组是Matlab中特有的一种数据类型,是数组的一种,其内部元素可以是属于不同的数据类型,概念理解上,可以认为它和C语言里面的结构体、C++里面的对象很类似。它特有的存取数据方法决定了它的特点,它有给人一种查询信息的感觉,可以逐渐追踪一直到所有的变量全部翻译成基本的数据信息。

A = cell(1, 6)

在这里插入图片描述

A{2} = eye(3)

在这里插入图片描述
magic字面意思是魔方,魔术的意思。在matlab中用来生成n阶幻方。比如三阶幻方就是1-9九个数字,组成一个3*3的矩阵,使得该矩阵无论横、竖还是斜三个方向上的三个数的总和是相同的。

A{5} = magic(5)

在这里插入图片描述

在这里插入图片描述

B = A{5}

在这里插入图片描述

(5)结构体

books = struct('name',{{'Machine Learing','Data Mining'}},'price',[30 40])
books.name
books.name(1) % 元胞数组
books.name{1} %字符串

在这里插入图片描述

4.矩阵定义与构造

A = [1 2 3 5 8 8 4 6]
B = 1:2:9
C = repmat(B,3,1)
D = ones(2,4)

在这里插入图片描述

5.矩阵的四则运算

A = [1 2 3 4;5 6 7 8]
B = [1 1 2 2;2 2 1 1]
C = A + B
D = A - B
E = A * B'
F = A .* B %对应项相乘
G = A / B %相当于A乘B的逆
H = A ./ B %对应项相除

在这里插入图片描述

6.矩阵的下标

A = magic(5)
B = A(2,3)
C = A(3,:) %第三行
D = A(:,4) %第四列
[m,n] = find(A > 20) %找大于20的序号值/矩阵,取出索引值

在这里插入图片描述

三、Matlab绘图

1.二维平面绘图1

x = 0:0.01:2*pi;
y = sin(x);
figure  %建立一个幕布
plot(x,y)
title('y = sin(x)')
xlabel('x')
ylabel('sin(x)')
xlim([0 2*pi]) %x轴的取值范围

在这里插入图片描述

2.二维平面绘图2

x = 0:0.01:20;
y1 = 200*exp(-0.05*x).*sin(x)
y2 = 0.8*exp(-0.5*x).*sin(10*x)
figure
[AX,H1,H2] = plotyy(x,y1,x,y2,'plot');%共用一个x轴
set(get(AX(1),'Ylabel'),'String','Slow Decay')
set(get(AX(2),'Ylabel'),'String','Fast Decay')
xlabel('Time(\musec)')
title('Multiple Deacy Rates')
set(H1,'LineStyle','--')
set(H2,'LineStyle',':')

在这里插入图片描述

3.三维立体绘图

t = 0:pi/50:10*pi;
plot3(sin(t),cos(t),t) %三维绘图用plot3
xlabel('sin(t)')
ylabel('cos(t)')
zlabel('t')
grid on %添加网格线
axis square

在这里插入图片描述

%双峰模型
[x,y,z] = peaks(30);
mesh(x,y,z)
grid

在这里插入图片描述

四、Matlab图像的导出

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

相关文章:

零基础学习Matlab,适合入门级新手,了解Matlab

一、认识Matlab Matlab安装请参见博客 安装步骤 1.界面 2.清空环境变量及命令 (1)clear all :清除Workspace中的所有变量 (2)clc:清除Command Window中的所有命令 二、Matlab基础 1.变量命名规则 &a…...

CCF ChinaSoft 2023 论坛巡礼 | 自动驾驶仿真测试论坛

2023年CCF中国软件大会(CCF ChinaSoft 2023)由CCF主办,CCF系统软件专委会、形式化方法专委会、软件工程专委会以及复旦大学联合承办,将于2023年12月1-3日在上海国际会议中心举行。 本次大会主题是“智能化软件创新推动数字经济与社…...

vue封装useWatch hook支持停止监听和重启监听功能

import { watch, reactive } from vue;export function useWatch(source, cb, options) {const state reactive({stop: null});function start() {state.stop watch(source, cb, options);}function stop() {state.stop();state.stop null;}// 返回一个对象,包含…...

智能配方颗粒管理系统解决方案,专业实现中医药产业数字化-亿发

“中药配方颗粒”,又被称为免煎中药,源自传统中药饮片,经过提取、分离、浓缩、干燥、制粒、包装等工艺加工而成。这种新型配方药物完整保留了原中药饮片的所有特性。既能满足医师的辨证论治和随症加减需求,同时具备强劲好人高效的…...

PXI总线测试模块-6951E 信号分析仪

6951E 信号分析仪 频率范围:10Hz~26.5GHz 6951E信号分析仪率范围覆盖10Hz~26.5GHz、带宽40MHz,具备频谱分析、相邻信道功率测试、模拟解调、噪声系数测试等多种测量功能。 6951E信号分析仪采用PXIe总线3U 4槽结构形式&#xff…...

精确杂草控制植物检测模型的改进推广

Improved generalization of a plant-detection model for precision weed control 摘要1、介绍2、结论摘要 植物检测模型缺乏普遍性是阻碍实现自主杂草控制系统的主要挑战之一。 本文研究了训练和测试数据集分布对植物检测模型泛化误差的影响,并使用增量训练来减小泛化误差。…...

C++:对象成员方法的使用

首先复习一下const : //const: //Complex* const pthis1 &ca; //约束指针自身 不能指向其他对象 // pthis1 &cb; err //pthis1->real; //const Complex* const pthis1 &ca;//指针指向 指针自身 都不能改 //pthis1->real; 只可读 …...

深入了解SpringMvc接收数据

目录 一、访问路径(RequestMapping) 1.1 访问路径注解作用域 1.2 路径精准(模糊)匹配 1.3 访问路径限制请求方式 1.4 进阶访问路径请求注解 1.5 与WebServlet的区别 二、接收请求数据 2.1 请求param参数 2.2 请求路径参数 2.3 请求…...

华东“启明”青少年音乐艺术实践中心揭幕暨中国“启明”巴洛克合奏团首演音乐会

2023年11月11日,华东“启明”青少年音乐艺术实践中心在上海揭幕,中国“启明”巴洛克合奏团开启了首场音乐会。 华东“启明”青少年音乐艺术实践中心由中共宁波市江北区委宣传部与上音管风琴艺术中心联合指导,宁波音乐港、宁波市江北区洛奇音乐…...

17. 机器学习——SVM

机器学习面试题汇总与解析——SVM 本章讲解知识点 什么是 SVMSVM 的基本原理线性不可分 SVM非线性 SVMSVM 优缺点本专栏适合于Python已经入门的学生或人士,有一定的编程基础。 本专栏适合于算法工程师、机器学习、图像处理求职的学生或人士。 本专栏针对面试题答案进行了优化…...

算法导论笔记5:贪心算法

P216 第15章动态规划 最优子结构 具有它可能意味着适合应用贪心策略 动态规划(Dynamic Programming)算法的核心思想是:将大问题划分为小问题进行解决,从而一步步获取最优解的处理算法。 剪切-粘贴技术证明 每个子问题的解就是它本身的最优解(利用反证法&#xff0…...

Vue的高级表格组件库【vxe-table】

文章目录 前言vxe-table官网实现表头拖拽树形表格全键盘操作后言 前言 hello world欢迎来到前端的新世界 😜当前文章系列专栏:前端系列文章 🐱‍👓博主在前端领域还有很多知识和技术需要掌握,正在不断努力填补技术短板…...

从0到0.01入门React | 002.精选 React 面试题

🤍 前端开发工程师(主业)、技术博主(副业)、已过CET6 🍨 阿珊和她的猫_CSDN个人主页 🕠 牛客高级专题作者、在牛客打造高质量专栏《前端面试必备》 🍚 蓝桥云课签约作者、已在蓝桥云课上架的前后端实战课程《Vue.js 和 Egg.js 开发企业级健康管理项目》、《带你从入…...

假冒 Skype 应用程序网络钓鱼分析

参考链接: https://slowmist.medium.com/fake-skype-app-phishing-analysis-35c1dc8bc515 背景 在Web3世界中,涉及假冒应用程序的网络钓鱼事件相当频繁。慢雾安全团队此前曾发表过分析此类网络钓鱼案例的文章。由于Google Play在中国无法访问,许多用户…...

软件外包开发的需求表达方法

软件开发需求的有效表达对于项目的成功至关重要。无论选择哪种需求表达方法,清晰、详细、易于理解是关键。与开发团队建立良好的沟通渠道,确保他们对需求有充分的理解,并随着项目的推进及时调整和更新需求文档。以下是一些常用的需求表达方法…...

详解JS的四种异步解决方案:回调函数、Promise、Generator、async/await

同步&异步的概念 在讲这四种异步方案之前,我们先来明确一下同步和异步的概念: 所谓同步(synchronization),简单来说,就是顺序执行,指的是同一时间只能做一件事情,只有目前正在执行的事情做完之后&am…...

Python进行多线程爬取数据通用模板

首先,我们需要导入所需的库,包括requests和BeautifulSoup。requests库用于发送HTTP请求,BeautifulSoup库用于解析HTML文档。 import requests from bs4 import BeautifulSoup然后,我们需要定义一个函数来发送HTTP请求并返回响应。…...

基于springboot实现沁园健身房预约管理系统【项目源码】

基于springboot实现沁园健身房预约管理系统演示 B/S架构 B/S结构是目前使用最多的结构模式,它可以使得系统的开发更加的简单,好操作,而且还可以对其进行维护。使用该结构时只需要在计算机中安装数据库,和一些很常用的浏览器就可以…...

论文笔记:Deep Trajectory Recovery with Fine-Grained Calibration using Kalman Filter

TKDE 2021 1 intro 1.1 背景 用户轨迹数据对于改进以用户为中心的应用程序很有用 POI推荐城市规划路线规划由于设备和环境的限制,许多轨迹以低采样率记录 采样的轨迹无法详细说明物体的实际路线增加了轨迹中两个连续采样点之间的不确定性——>开发有效的算法以…...

ubuntu下tensorrt环境配置

文章目录 一、Ubuntu18.04环境配置1.1 安装工具链和opencv1.2 安装Nvidia相关库1.2.1 安装Nvidia显卡驱动1.2.2 安装 cuda11.31.2.3 安装 cudnn8.21.2.4 下载 tensorrt8.4.2.4 二、编写CMakeLists.txt三、TensorRT系列教程 一、Ubuntu18.04环境配置 教程同样适用与ubuntu22.04…...

玩客云OneCloud轻量级影视站:LibreTV+Docker极简部署指南

1. 为什么选择玩客云搭建影视站? 最近两年,我发现身边越来越多的朋友开始折腾家庭影音系统。有人花大价钱买专业NAS,也有人用旧电脑改造,但最让我眼前一亮的方案,还是用玩客云OneCloud这种小设备搭建影视站。你可能要问…...

2025_NIPS_Spatial-Aware Decision-Making with Ring Attractors in Reinforcement Learning Systems

文章核心总结与翻译 一、主要内容 文章提出将受神经回路动力学启发的环形吸引子(Ring Attractors)整合到强化学习(RL)系统中,以解决空间结构化环境中的高效动作选择问题。通过构建外源性连续时间循环神经网络(CTRNN)模型和内源性深度学习(DL)模块两种实现方式,环形…...

刷新页面后 Vuex 状态丢了怎么办?教你三种主流的持久化补救方案

Vuex 状态刷新丢失是因数据默认存于内存,解决方案有三:一、手动用 localStorage/sessionStorage 同步;二、使用 vuex-persistedstate 插件自动持久化;三、按业务语义选择 sessionStorage(会话级)或 localSt…...

拒绝代码审查:神经民主开发模式宣言

一场迟到的变革在软件开发的漫长历史中,代码审查(Code Review)已被奉为保障质量的金科玉律。无数指南、流程和工具围绕它构建,将其塑造成交付可靠软件不可或缺的环节。对于测试从业者而言,它更是质量防线前移、从“验证…...

3步掌握MTKClient:从零基础到设备调试的完整指南

3步掌握MTKClient:从零基础到设备调试的完整指南 【免费下载链接】mtkclient MTK reverse engineering and flash tool 项目地址: https://gitcode.com/gh_mirrors/mt/mtkclient MTKClient是一款功能强大的联发科芯片调试工具,能够帮助开发者进行…...

卡证检测矫正模型Web界面使用教程:中文操作+实时结果可视化

卡证检测矫正模型Web界面使用教程:中文操作实时结果可视化 你是不是经常需要处理身份证、护照、驾照这些卡证图片?比如要上传证件照办业务,或者批量处理一堆证件材料。最头疼的就是拍出来的照片歪歪扭扭,背景杂乱,还得…...

seo高级优化如何利用社交媒体_seo高级优化如何进行技术优化

SEO高级优化如何利用社交媒体 在当前的数字营销环境中,搜索引擎优化(SEO)已经不再是一个简单的任务,它已经演变成了一个复杂而多层次的过程。SEO高级优化不仅仅涉及内容创作,还包括技术优化、用户体验以及社交媒体的有…...

# 007、复杂驱动与ECU抽象:硬件深度访问与传感器执行器集成

深夜的示波器 上周三凌晨两点,产线测试报出一个诡异问题:某个车窗控制模块在低温下偶发升窗抖动。逻辑层代码检查了三遍,RTE接口确认无误,可问题就在那里——像幽灵一样时隐时现。最后把示波器探头直接钩到电机驱动芯片的引脚上,才发现是MOSFET栅极驱动波形在低温下出现了…...

CSS如何避免浮动元素换行_计算所有浮动元素的总宽度不超过父容器宽度

浮动元素换行是因子元素总宽度(含padding、border、margin)超过父容器可用宽度,导致最后一个被挤至下一行;这是float原始行为,非bug,需用box-sizing:border-box、flex布局等规避。浮动元素换行是因为父容器…...

C#运动控制入门:从零开始用PID算法控制伺服电机(附完整代码)

C#运动控制入门:从零开始用PID算法控制伺服电机(附完整代码) 第一次尝试用代码控制伺服电机时,我盯着那台嗡嗡作响的设备,看着它时而抽搐、时而狂奔,完全不像预期那样优雅地移动到指定位置。那一刻我意识到…...