快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

这篇具有很好参考价值的文章主要介绍了快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

福利:文末有资料分享!!

1、《MATLAB完全学习手册(视频+课件+代码)》
2、《MATLAB入门》
3、《详解MATLAB在科学计算中的应用》
4、《案例二 MATLAB与Excel交互》
5、《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》
6、《MATLAB常用函数参考 MATLAB函数汇总 精通MATLAB》
7、等等。。。。

前言

前两天,我们在(MATLAB入门(上))中简单认识了MATLAB,了解了MATLAB的基础知识,今天继续从文件读取、MATLAB绘图两个方面给大家介绍。

一、文件读取

1. 工作空间数据读取

在MATLAB中可以将工作空间的变量保存为文件,可以从文件中导入数据保存为变量,常用命令为save函数。

save:将当前工作区的所有变量以二进制格式保存到文件matlab.mat文件张总,不同类型的数据按照对应的最大精度保存,并保存对应的变量名称。

save(‘filename’):将文件保存到当前目录下,文件名为filename.mat,如需要保存到其他目录下,需需要添加文件路径。

save(‘filename’,‘var1’,‘var2’):将工作空间内指定变量保存到文件filename.mat中。

load:加载matlab.mat中所有的变量,如果文件不存在则返回错误。

load filename:加载指定文件filename中的所有变量,加载时根据文件后缀确定文件的读入方式。

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

2. 文本文件读取

A = fread(fid):通过文件指针读入二进制格式文件,读入的数据存放在数组A中,读入数据的过程中,文件指针从头到尾,可用feof检测。

A = fread(fid,count):读入count个数组元素,fread读入后,文件指针定位于读入字节的下一字节处,后续读入的字节从此开始。

A = fread(fid,count,precision,skip):以precision指定的精度读入数据,skip可以选择跳过若干个字符。

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

3. 常用的数据导入和导出函数

dlmread:从分隔文本文件中读入数据

dlmwrite:将数据写入分隔文本文件

textread:从文件中读入格式化文本

textscan:利用fopen函数打开文件后,读入格式化文件

xlsread:读入电子表格中的数据

imread:从图像文件中读入数据

imwrite:将数据写入图像文件

aviread:从avi文件中读入数据

4. 图像文件的读入和输出

图像文件读入可以通过imread函数来实现,该函数只支持多种格式的图像文件,包括BMP、CUP、GIF、HDF、ICO、JPG、PBM、PCX、PGM、PNG、PNM、PPM、RAS、TIF、XWD。

A = imread(filename,fmt):从filename中读入图像文件,如果图像文件不在当前目录,则需要指出路径,fmt为图像文件格式

[X,map] = imread(filename,fmt):将位图文件读入到X中,相关的颜色数据读入到map中,颜色数据在[0,1]之间变化。

[~] = imread(URL,filename):从网络中导入图片,url为网址

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

图像文件输出可以通过imwrite函数来实现,支持的图像文件格式包括BMP、CUP、GIF、HDF、ICO、JPG、PBM、PCX、PGM、PNG、PNM、PPM、RAS、TIF、XWD。

imwrite(A,filename,fmt):将图像A以指定的图像格式fmt写入filename文件中,A可以是mn的灰色图像,也可以是mn*3的彩色图像。

imwrite(X,map,filename,fmt):将X中的位图和相关的色彩映像以指定的格式fmt写入文件中。

%绘制图像

x = 0:pi/12:2*pi;

plot(sin(x),cos(x),'color','blue','linewidth',5,'marker','d');

axis square

PS.Color = [0.7,0.7,0];

PS.LineWidth = 2;

line(sin(7*x),cos(7*x),PS)

[X,map] = imread('figure','jpg');

imshow(X,map)

imwrite(X,'figure_new','jpg')

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

二、MATLAB绘图

1.二维图形绘制

plot函数是Matlab绘制二维图形的常用函数,该函数将数组中的数据点绘制在坐标平面上,通过直线将这些点连起来构成一条连续的曲线。主要的命令格式如下:

1、plot(x,‘PropertyName’,PropertyValue)

x表示绘制图表的数据,Property表示属性的字符选项,PropertyValue表示相应的选值。

当x是一维数组时,以数组元素的下标为横坐标,元素数值为纵坐标绘制曲线;

当x为二维数组时,数组的每列数组元素为总坐标,数组下标为横坐标绘制多条曲线。

2、plot(x,y,‘PropertyName’,PropertyValue)

当x和y为同维数组时,分别以x和y为横纵坐标绘制曲线,

x为一维数组,y为矩阵时,y的某一维度与x维度相等,绘制多条曲线;

x和y都为矩阵时,分别以对应的x和y为横纵坐标,曲线条数与矩阵列数相等。

3、plot(x1,y1,x2,y2,‘PropertyName’,PropertyValue)

在窗口中同时绘制以x1和y1,x2和y2等分别为横纵坐标的曲线。

%plot函数绘图示例

%生成一维数组及参数数组

a = 0:0.1:1;

t = 0:0.01:1;

%生成二维数组

y = sin(3*t').*exp(-t')*a;

%figure1:二维数组绘制曲线

subplot(2,2,1)

plot(y)

axis([0,100,0,1]);

xlabel('index');ylabel('y');

title('figure1');

%figure2:一维数组和二维数组绘制曲线

subplot(2,2,2)

plot(t,y)

axis([0,1,0,1]);

xlabel('t');ylabel('y');

title('figure2');

%figure3:二维数组和一维数组绘制曲线

subplot(2,2,3)

plot(y,t)

axis([0,1,0,1]);

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

  1. 线型、标记和颜色

MATLAB中常见的线型、标记符、颜色如下图所示。

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

%plot函数参数示例

%生成一维数组

t = 0:pi/20:3*pi;

%生成因变量数组

y = exp(-t/3).*sin(2*t+3);

y1 = exp(-t/3);

%绘制曲线

plot(t,y,'b:*',t,y1,'r-')

xlabel('t');ylabel('y');

title('Linestyle and markers');

legend('y=exp(-t/3).*sin(2*t+3)','y1=exp(-t/3)');

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

3. 三维曲线绘制

plot3函数是Matlab绘制三维曲线的常用函数,输入参数时,需要输入第三个参数数组。

plot(x,y,z,LineSpec,‘PropertyName’,PropertyValue)

如果x,y和z是同维数组(向量、矩阵),分别以对应列作为x、y和z坐标,曲线的个数等于矩阵列维。

%plot3函数绘图示例

t = 0:pi/50:10*pi;

plot3(sin(t),cos(t),t,'r*-');

xlabel('sin(t)');ylabel('cos(t)');zlabel('t');

title('figure1:helix');

%绘制多条曲线

figure;

x = linspace(0,3*pi,200);

z1 = sin(x); z2 = sin(2*x); z3 = sin(3*x);

y1 = zeros(size(x)); y2 = ones(size(x));

y3 = 2*ones(size(x));

plot3(x,y1,z1,'r*',x,y2,z2,'bp',x,y3,z3,'mx');

xlabel('x');ylabel('y');zlabel('z');

title('figure2:sin(x),sin(2x),sin(3x)');

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

4. 网格与曲面图绘制

三维网格图相当于在x-y平面上的z坐标定义一个网格面,相邻的点通过直线连接,网格节点就是z的数据点,在Matlab中通过mesh函数实现。

mesh(z):以z矩阵的列和行的下标为x和y轴的自变量绘制网格图;

mesh(x,y,z):x和y为自变量矩阵,z为建立在x和y之上的函数矩阵;

与mesh函数相比,surf函数使曲面上的所有网格都填充了颜色,命令格式与mesh函数类似。但提供了平面阴影和插值阴影。

%mesh函数绘图示例

x = 0:pi/20:2*pi;

y = 0:pi/20:2*pi;

[X,Y] = meshgrid(x,y);

Z = sin(X)+cos(Y);

mesh(X,Y,Z)

xlabel('X');ylabel('Y');zlabel('Z');

title('figure1');

figure;

mesh(Z)

xlabel('X');ylabel('Y');zlabel('Z');

title('figure2');

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

%surf函数绘图示例

x = 0:pi/20:2*pi; y = 0:pi/20:2*pi;

[X,Y] = meshgrid(x,y);

Z = sin(X)+cos(Y);

surf(X,Y,Z)

shading flat

xlabel('X');ylabel('Y');zlabel('Z');

title('figure1');

figure;

surf(Z)

shading interp

xlabel('X');ylabel('Y');zlabel('Z');

title('figure2');

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

  1. 等值线绘制

等值线图能够将具有相同数值的点连起来绘制相等数值的曲线或曲面,常用的MATLAB绘制等值线图函数的命令格式为:

contour(z):绘制z所表达的等值线图

coutour(z,n):参数n为所需要绘制的等值线图的数目

contour(z,v):向量v定义了等值线的数目和数值

%等值线绘图示例

x = 0:pi/20:2*pi;

y = 0:pi/20:2*pi;

[X,Y] = meshgrid(x,y);

Z = sin(X)+cos(Y);

surf(X,Y,Z)

shading interp;

contour(X,Y,Z,-2:0.4:2)

xlabel('X');ylabel('Y');

title('二维等值线图');

figure

contour3(X,Y,Z,60)

xlabel('X');ylabel('Y');zlabel('Z');

title('三维等值线图');

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

  1. 颜色表示等值线

%颜色表示等值线绘图示例

x = 0:pi/20:2*pi;

y = 0:pi/20:2*pi;

[X,Y] = meshgrid(x,y);

Z = sin(X)+cos(Y);

surf(X,Y,Z)

shading interp;

figure

contourf(X,Y,Z,20)

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

7. 特殊图形绘制

(1)饼图绘制

pie(x):绘制向量x的饼图,x中的每一个元素就是饼图中的每一个扇形部分。

pie(x,explode):参数explode和x是同维数组,如果explode中有非零元素,x数组中对应元素唉饼图中将向外移出元素数值大小,加以突出。

pie(~,labels):参数labels表示饼图上的扇形。

%饼图绘制示例

%向量参数设定

x = [1,3,0.5,2.5,2];

explode = [1,0,0,0,0];

subplot(1,2,1)

pie(x,explode,{'a','b','c','d','e'});

title('二维饼图')

subplot(1,2,2)

pie3(x,explode);

title('三维饼图')

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

(2)直方图和梯形图

bar(y):为一维数组y的每个元素绘制一个条形。

bar(x,y):在横坐标向量x上绘制直方图y,x向量需要按照递增的方式排列。

bar(~,width):width用于设置直方图条形的相对宽度和条形之间间距。

hist(y,n):表示数组y中值的分布情况,n表示柱状图中柱的数量,默认为10个。

%绘制直方图和柱形图

x = -3:0.3:3;

y = exp(-x.^2);

bar(x,y,0.8);

xlabel('x');ylabel('y')

figure

bar3(x,y,0.9)

xlabel('x');ylabel('y')

y = randn(1,10000);

figure

hist(y,30)

快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》

总结

MATLAB是一款广泛应用的科学计算工具,适用于科研、工程、数据分析等领域。认识MATLAB需要了解其概述及特点,学会使用命令窗口、创建M文件、目录和文件管理、搜索路径管理等基本操作。MATLAB基础知识包括简单计算、基本运算符号、数值、变量及表达式、数组的生成和寻访。编程基础则包括流程控制、控制命令、逻辑数组和向量化等。掌握这些基础知识可以让使用MATLAB更加得心应手。
快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》
关注微信公众号:资源充电吧
回复:MATLAB

1、《MATLAB完全学习手册(视频+课件+代码)》
2、《MATLAB入门》
3、《详解MATLAB在科学计算中的应用》
4、《案例二 MATLAB与Excel交互》
5、《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》
6、《MATLAB常用函数参考 MATLAB函数汇总 精通MATLAB》
7、考证、考研、IT、源码等等。。。。海量资源均免费分享哦文章来源地址https://www.toymoban.com/news/detail-465830.html

到了这里,关于快速上手MATLAB:科研、工程、数据分析,MATLAB入门(下)教你基础知识!分享《MATLAB初学者教程 MATLAB编程-菜鸟入门(清晰版)》的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • R数据分析:解决科研中的“可重复危机”,理解Rmarkdown

    不知道刚接触科研的大伙儿有没有这么一个感觉,别人的研究很大可能你重复不出来,尤其是社科实证研究,到现在我都还觉得所谓的实证是个很玄乎的东西; 如果是刚开始做数据分析,很多时候你会发现自己的分析结果过几天自己都重复不出来。反正我自己是有这样的经历

    2024年02月10日
    浏览(65)
  • ChatGPT深度科研应用、数据分析及机器学习、AI绘图与高效论文撰写

    熟练地掌握ChatGPT4.0在数据分析、自动生成代码等方面的强大功能,同时更加系统地学习人工智能(包括传统机器学习、深度学习等)的基础理论知识,以及具体的代码实现方法,掌握ChatGPT4.0在科研工作中的各种使用方法与技巧,以及人工智能领域经典机器学习算法(BP神经网

    2024年04月16日
    浏览(51)
  • ChatGPT深度科研应用、数据分析及机器学习、AI绘图与高效论文撰写教程

    原文链接:ChatGPT深度科研应用、数据分析及机器学习、AI绘图与高效论文撰写教程 https://mp.weixin.qq.com/s?__biz=MzUzNTczMDMxMg==mid=2247601506idx=2sn=5dae3fdc3e188e81b8a6142c5ab8c994chksm=fa820c85cdf58593356482880998fc6eb98e6889b261bf621e1d43038ed0376b68fefe8703dftoken=1175537617lang=zh_CN#rd 第一:2024大语言模型最新进展

    2024年04月17日
    浏览(57)
  • 亲手打造大数据分析项目:一篇看完就能上手的实操指南

    在我们的日常生活中,大数据无处不在。从推荐系统到精准医疗,大数据都在不断地影响着我们的生活。那么,如何利用大数据进行分析呢?今天,我将带领你一步步地完成一个大数据分析项目,从数据预处理到模型构建,我将向你展示完整的开发流程。 在开始之前,我们需

    2024年02月16日
    浏览(57)
  • 基于ArcGIS、ENVI、InVEST、FRAGSTATS等多技术融合提升环境、生态、水文、土地、土壤、农业、大气等领域的数据分析能力与项目科研水平研修

    【科研团队必选】 老师赋予目的不仅仅是技术的掌握,更能从技术融合与科研经验的视角下,培养科研团队科研素质,挖掘-融合-创新 目的: 以科研及项目角度解决您的数据分析问题及热点问题,为您的论文写作及项目推进挖掘更好的创新点与数据支持,培养科研团队科研

    2024年02月13日
    浏览(50)
  • 科研学习|论文解读——老年人对生活的支配与日常生活信息寻求行为之间的关联:皮尤研究中心的信息参与和信息谨慎调查数据分析

    题目: Associations between mastery of life and everyday life information-seeking behavior among older adults: Analysis of the Pew Research Center\\\'s information engaged and information wary survey data 人口老龄化是一个全球现象。(现实背景) 老年人的信息搜寻行为可能在促进老年人健康老龄化方面发挥重要作用。(

    2024年01月19日
    浏览(61)
  • 工程师必备串口数据截取工具modbus命令分析串口数据分析

    工程师必备串口数据截取工具modbus命令分析串口数据分析。 主要功能: ·支持监控COM端口类型:标准电脑端口,内核虚拟COM端口,USB转串口等; ·可以实时监控并采集串口数据; ·可以同时监控多个串行端口; ·监控已经被其他应用程序打开的串口(需要服务启动); ·支持

    2024年02月13日
    浏览(35)
  • 数据分析案例-BI工程师招聘岗位信息可视化分析

    🤵‍♂️ 个人主页:@艾派森的个人主页 ✍🏻作者简介:Python学习者 🐋 希望大家多多支持,我们一起进步!😄 如果文章对你有帮助的话, 欢迎评论 💬点赞👍🏻 收藏 📂加关注+ 目录 数据集介绍 实验工具  实验过程 导入数据 数据预处理 数据可视化 1.分析BI工程师岗位

    2024年02月06日
    浏览(40)
  • 19.matlab数据分析插值(matlab程序)

    1. 简述        数据插值的计算机制 数据插值是一种函数逼近的方法。 一维插值 Y1=interp1(X,Y,X1,method) 二维插值 interp2():二维插值函数。 调用格式: Z1=interp2(X,Y,Z,X1,Y1,method) 其中,X、Y是两个向量,表示两个参数的采样点, Z是采样点对应的函数值。X1、 Y1是两个标量或向量,表示

    2024年02月16日
    浏览(35)
  • 22matlab数据分析 拉格朗日插值(matlab程序)

    1. 简述        第一部分:问题分析 (1)实验题目:拉格朗日插值算法 具体实验要求:要求学生运用拉格朗日插值算法通过给定的平面上的n个数据点,计算拉格朗日多项式Pn(x)的值,并将其作为实际函数f(x)的估计值。用matlab编写拉格朗日插值算法的代码,要求代码实现用户

    2024年02月15日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包