了解点儿MATLAB,知道它非常有用,但一直不太会用,如何快速掌握并运用它呢?

本专栏力争用最简洁的语言和逻辑,让您在最短时间内,学到教材课程中罕见的MATLAB运用技法,从新手迈向成手。

超强的MATLAB作图功能

MATLAB不仅是处理矩阵的神器,还是矩阵可视化的神器。

什么叫矩阵可视化?

其实,我们分析数据/处理信号/解析图像等等这一类的操作,都是对矩阵的操作,并把它可视化出来。

水波图像看着复杂,其实无非是可视化的矩阵而已

直接上手最常用作图函数——plot

plot,用来绘制二维的图线。

x = 0:pi/100:2*pi;y = sin(x);plot(x,y)

自动弹出一个界面并显示结果

观察一下代码,x是从0到2pi(也就是360度),间隔是pi/100,也就是说,分成了200小段。

x是个向量,所以y=sin(x)也是一个相同尺寸的向量。

plot(x,y)就是把对应位置的xy连成直线。

有同学会问了,我明明看到的是曲线,你怎么说是直线?

这样,我把x变成 x = 0:pi/5:2*pi ,再看看结果:

分的段过少,图线误差就大,变成折线了

所以说,完全取决于分成多少小段,类似于图像处理中的分辨率。

常用技术:一图画多线

一张图中,为了方便对比,想一起画n条曲线,怎么做呢?x = linspace(-2*pi,2*pi);y1 = sin(x);y2 = cos(x);figureplot(x,y1,x,y2)

一图多线,方便对比

说明:linspace的用法类似于冒号;需要写2遍x,不可遗漏。

plot其它功能介绍

plot太常用了,是绘图的基础,大家一定help看一下,这里再详细补充一下。

plot还有太多功能了,比如:设置线型/线颜色/线粗

设置marker的形状/颜色/大小

设置标题和坐标轴

设置网格线和标注

使用subplot实现一张大图中多个小图

来个例子吧。

ax1 = subplot(2,1,1); % top subplotx = linspace(0,3);y1 = sin(5*x);plot(ax1,x,y1)title(ax1,'Top Subplot')ylabel(ax1,'sin(5x)')ax2 = subplot(2,1,2); % bottom subploty2 = sin(15*x);plot(ax2,x,y2)title(ax2,'Bottom Subplot')ylabel(ax2,'sin(15x)')

一张大图中包含两个小图

这里的subplot(2,1,1)明显又是矩阵思维,“2,1” 不就是代表2行1列的意思么!

所以说,矩阵思维贯穿MATLAB始终。

三种常用2D作图之——条形图bary = [2 2 3; 2 5 6; 2 8 9; 2 11 12];bar(y)

自动分组,自动上色

挺方便的吧,几个数字就完成一张图的绘制。

这里观察y的结构和bar图的对应关系,可以知道,每一行被认为是一组,每一列是一类数据共用同样的颜色。

误差线图errorbar是条形图中很常用的形式了,尤其学工程尤其医学工程类的同学,是不可不知的——

x = linspace(0,10,15);y = sin(x/2);err = 0.3*ones(size(y)); % 这里的误差是“生成”出来的并不是实验的真实数据errorbar(x,y,err,'-s','MarkerSize',10,... 'MarkerEdgeColor','red','MarkerFaceColor','red')

误差线图——每个“工”字形代表这个数据的误差范围

三种常用2D作图之——直方图histx = randn(1000,3); hist(x)

能看出正态分布的趋势么?

这里使用了一个正态分布的随机函数randn,1000行3列。还有一种漂亮的极坐标直方图——rose

一看名字就知道她的美丽了,为啥叫“玫瑰”呢?请看——

theta = [0.4 1.4 3.1 2.3 0.4 2.5 3.9 2.8 2.3 1.6 4.6 4.5 6.1 3.9 5.1];rose(theta,10)

多像一朵玫瑰花

这是极坐标下的直方图形式,需要注意的是,虽然有点像,但它并不是传统意义上的饼图,因为饼图有专用的函数——

三种常用2D作图之——饼图pieX = [1 3 0.5 2.5 2];pie(X)

自动产生比重值和颜色

X是一个向量,每个元素代表一类对象的值。

再来一个高级用法:

X = categorical({'North','South','North','East','South','West'});explode = {'West'};labels = {'E','N','S','W'};pie(X,explode,labels)

MATLAB的饼图也挺好看的吧

matlab 三维饼图,重新学习MATLAB——作图技法及3D可视化相关推荐

  1. matlab实验学习心得,matlab实验心得体会-学习matlab的心得体会

    matlab实验心得体会-学习matlab的心得体会 导语:通过对MATLAB的系统环境,数据的各种运算,矩阵的分析和处理,程序设计,绘图,数值计算及符号运算的学习,初步掌握了MATLAB的实用方法. ...

  2. matlab三维立体空间图,三维空间作图.ppt

    三维空间作图 数学软件 Matlab 本讲主要内容 手工作图 手工作图 Matlab 绘图 二维作图命令 二维作图命令 图形的属性 点和线的基本属性 添加标题 添加坐标轴标注 绘制多个函数图像 添加图 ...

  3. matlab要掌握什么,学习matlab需要什么基础?

    MATLAB是一门较为高级的语言,在科学研究.金融建模.数学运算方面有非常重要的用处,被广泛运用在各行各业.同时,MATLAB语言比较友好,语法方面的限制很少,交互性做的很好,更重要的是有庞大的库函数 ...

  4. matlab三维图加上四维,matlab 3D+颜色的四维函数的作图

    函数f=f(x,y,z),x,y,z是三维坐标轴,要画的图中要以x,y,z为三个轴,尝试用surf(x,y,z,f),出来的表面图是用颜色表示了f的大小,为了更直观一些,能不能同时通过表面起伏来表示f ...

  5. matlab 三维点 边界曲面,不用matlab如何从散点数据绘制极坐标三维曲面图?

    [ 在 OSN10 (老洪) 的大作中提到: ] : 标  题: Re: 不用matlab如何从散点数据绘制极坐标三维曲面图? : 发信站: 水木社区 (Sat Dec 15 20:47:17 201 ...

  6. matlab中饼图绘制程序,MATLAB中绘制二维饼图的函数是(? ? ) (1.5分)

    MATLAB中绘制二维饼图的函数是(? ? ) (1.5分) 答:pie 计算机的内存储器比外存储器读写速度 ______ 答:快 新民主主义革命时期,提出了反帝反封建这个任务就等于真正懂得了什么叫反 ...

  7. matlab三维海浪代码,基于Matlab的不规则海浪三维仿真

    Vol. 15 No. 7 系 统 仿 真 学 报 July 2003 JOURNAL OF SYSTEM SIMULATION • 1057 • 基于 Matlab 的不规则海浪三维仿真 李 晖 1 ...

  8. matlab三维数组怎么定义,matlab如何定义三维数组?

    满意答案 _nexo 2017.10.12 采纳率:59%    等级:8 已帮助:2410人 (1)在Matlab中习惯性的会将二维数组中的第一维称为"行"第二维称为" ...

  9. matlab三维凸包,计算凸包 - MATLAB Simulink - MathWorks 中国

    使用 convhull 和 convhulln 计算凸包 convhull 和 convhulln 函数取一个点集,输出位于凸包边界上的点的索引.凸包基于点索引的表示法支持绘图,且便于数据访问.下面这 ...

最新文章

  1. C语言:随笔5--指针1
  2. ALV分类合计功能实现
  3. 美国伊利诺伊大学香槟分校计算机专业,伊利诺伊大学香槟分校计算机科学排名第7(2020年TFE美国排名)...
  4. [多图]全球范围内Linux用户普及度数据
  5. 如何从rpm包中提取文件
  6. 数据科学 IPython 笔记本 7.1 Pandas
  7. SpringCloud工作笔记032---SpringCloud异常(Euruka):Application run failed java.lang.NoSuchMethodError: org.
  8. 算法导论 思考题6-2
  9. shell脚本监控cpu/内存使用率 转
  10. 数学建模matlab实验报告,数学建模实验.doc
  11. (日常搬砖)Linux常用指令记录(更新ing)
  12. Abaqus单位制简述
  13. 大话设计模式 设计模式书籍 编程书籍
  14. Java 生成随机中文、英文姓名(上)
  15. ai画面怎么调大小_Adobe Illustrator(Ai)里怎么改变图像大小,快捷键是什么?
  16. 为什么微信连接不上服务器失败怎么回事啊,微信为什么一直提示连接失败请检查网络设置...
  17. 聚类 k-means、yellowbrick和信用卡用户实例 -- 023
  18. 黑马NLP实战 --- 新闻分类模型训练
  19. 从零开始使用AntDB
  20. 全息投影在博物馆中有哪些作用

热门文章

  1. mysql 环形复制_mysql复制(Replication)
  2. hive python udf_python udf方法
  3. js判断浏览器是否支持webGL
  4. matlab中system prt,急!!求救!!MATLAB关于prt报错!
  5. mysql正则表达式配置,MySQL REGEXP:正则表达式
  6. java入门第六天课程_java基础第六天
  7. mac睡眠快捷键_mac键盘快捷键大全
  8. 计算机internet服务,计算机基础与应用——04Internet上的信息服务.ppt
  9. mysql带where条件导出数据表以及部分错误解析
  10. 我们究竟还要学习哪些Android知识?面试真题解析