MATLAB作图方法与技巧(三)
1.利用指令plot绘制圆的参数方程x = sin(t),y = cos(t),(0<=t<=2*pi)的曲线图.
代码如下
t = linspace(0,2*pi,100);
x = sin(t);y = cos(t);
f = x + i*y;
plot(f);
axis('square');
其中axis中的参数为square表示图形示以正方形的形式显示.
2.figure命令
figure(i)有两种不同的功能
①若没有第i个图形窗口,则新建第i个图形窗口
②若有第i个图形窗口,则将第i个图形窗口切换到当前窗口
3.柱状图的绘制
bar作垂直的柱状图,barh作水平的柱状图,下面以bar为例说明其两种用法.
①bar(X)
作以X为值的柱状图,如
X = [1 5 3;2 5 4;3 9 6;4 8 6;12 2 2];
bar(X);
这种用法是以自然数作为横坐标索引的.
②bar(X,Y)
作以X为横坐标索引且以Y为值的柱状图,如
X = [2012 2013 2014 2015 2016];
Y = [1 5 3;2 5 4;3 9 6;4 8 6;12 22];
bar(X,Y);
③bar(X,’stack’)
如:
X = [1 5 3;2 54;3 9 6;4 8 6;12 2 2];
bar(X,'stack');
④bar(X,Y,’stack’)
如:
X = [2012 20132014 2015 2016];
Y = [1 5 3;2 54;3 9 6;4 8 6;12 2 2];
bar(X,Y,'stack');
4.饼图的绘制
pie命令绘制平面饼图,pie3命令绘制三维饼图,下面以pie命令为例说明其常用用法.
①pie(x)
作以向量x为比例的平面饼图,如
x = [5 1 4 3 2];
pie(x);
②pie(x,explode)
作以向量x为比例的平面饼图,并根据0-1向量explode将某一块分裂出去,如
x = [5 1 4 3 2];
explode = [0 1 0 1 0];
pie(x,explode);
下面,是一个综合的例子
x = [5 1 4 3 2];
explode = [0 1 0 1 0];
subplot(2,2,1);
pie(x);
subplot(2,2,2);
pie(x,explode);
subplot(2,2,3);
pie3(x);
subplot(2,2,4);
pie3(x,explode);
5.根据参数方程绘制空间曲线——plot3命令
plot3命令有两种参数形式,区别在于是否有对曲线颜色、样本点形状、曲线形式等的控制参数
①不带控制参数
如绘制x=sin(t),y=cos(t),z=t,0<=t<=10*pi的空间曲线,使用plot3命令,如下
t =linspace(0,10*pi,360);
x = sin(t);y =cos(t);z = t;
plot3(x,y,z);grid on;
②带控制参数
如绘制x=sin(t),y=cos(t),z=cos(2t),0<=t<=2*pi的空间曲线,使用plot3命令,如下
t =linspace(0,2*pi,36);
x = sin(t);y = cos(t);z= cos(2*t);
plot3(x,y,z,'b*--');gridon;
6.根据函数z=f(x,y)绘制空间曲面
先用meshgrid命令生成数据点(x,y)集合,再用mesh或surf命令绘制曲面图,二者的参数形式完全一样,区别在于surf会在给网格上涂色
①mesh命令
绘制z=xy在[-1,1]x[2,4]上的曲面图,使用mesh命令
x =linspace(-1,1,10);
y =linspace(2,4,20);
[X,Y] = meshgrid(x,y);
Z = X.*Y;
mesh(X,Y,Z);
②surf命令
将①中代码的mesh换为surf会得到不一样的结果,代码如下
x =linspace(-1,1,10);
y =linspace(2,4,20);
[X,Y] =meshgrid(x,y);
Z = X.*Y;
surf(X,Y,Z);
MATLAB作图方法与技巧(三)的更多相关文章
- MATLAB作图方法与技巧(二)
作为MATLAB作图方法与技巧(一)的补充 1.绘制二维散点图 ① scatter函数 scatter(x,y,s,c)函数绘制向量x和y的散点图,其中s代表点的大小,c代表点的形状,s和c缺省时为默 ...
- MATLAB作图方法与技巧(一)
下面从折线图.曲面图和图形说明与定制三个方面说明MATLAB作图的一些方法与技巧,注意,文中出现的单引号在MATLAB中实际运行的时候,需要改为MATLAB认可的单引号. 一. 作折线图 1.plot ...
- Matlab中数组元素引用——三种方法
Matlab中数组元素引用——三种方法 1.Matlab中数组元素引用有三种方法 1 2 3 1.下标法(subscripts) 2.索引法(index) 3.布尔法(Boolean) 注意:在使 ...
- 小论文matlab作图技巧
小论文matlab作图技巧 编辑->复制选项 编辑->图形属性 图中右击->字型 编辑->复制图片,即可. 效果: 宽:5.9高: 7.91
- 【转】Matlab作图语句小结
之前用Matlab作图,从网上找了些别人的例子,然后慢慢调参数.其实对很多命令,特别是对句柄不是很了解,今天简单总结了一下.下面用几个例子来说明: ]); 首先,gcf是当前figure对象 ...
- 【原创】Matlab.NET混合编程技巧之直接调用Matlab内置函数
本博客所有文章分类的总目录:[总目录]本博客博文总目录-实时更新 Matlab和C#混合编程文章目录 :[目录]Matlab和C#混合编程文章目录 在我的上一篇文章[ ...
- 经验分享:多屏复杂动画CSS技巧三则
当下CSS3应用已经相当广泛,其中重要成员之一就是CSS3动画.并且,随着CSS动画的逐渐深入与普及,更复杂与细腻的动画场景也如雨后春笋般破土而出.例如上个月做的「企业QQ-新年祝福」活动: 感谢sh ...
- Object Pascal 方法与技巧
4 方法与技巧 4.1 设置代码模板 代码模板是Delphi 的代码感知特性的一种,通过它可以快速.高效和正确地输入代码.代码模板将一些常用的语句块保存在模板中,然后程序员只要在代码编辑器中按下“Ct ...
- Matlab.NET混合编程技巧之——直接调用Matlab内置函数(附源码)
原文:[原创]Matlab.NET混合编程技巧之--直接调用Matlab内置函数(附源码) 在我的上一篇文章[原创]Matlab.NET混编技巧之——找出Matlab内置函数中,已经大概的介绍了mat ...
随机推荐
- LTE中基于S1的切换
1:源eNodeB决定进行基于S1的切换.S1切换的原因可能是源eNodeB和目标eNodeB之间不存在X2连接,或者源eNodeB根据其他情况作出的判断. 2:源eNodeB向源MME发送Hando ...
- 《学习OpenCV》课后习题解答8
题目:(P126) 本章完整讲述了基本的输入/输出编程以及OpenCV的数据结构.下面的练习是基于前面的知识做一些应用,为后面大程序的实现提供帮助. a.创建一个程序实现以下功能:(1)从视频文件中读 ...
- ELK6.2.4集群
ELK6.2.4集群安装使用 https://www.cnblogs.com/frankdeng/p/9139035.html 一 简介 Elasticsearch是一个高度可扩展的开源全文搜索和分析 ...
- 【loj6177】「美团 CodeM 初赛 Round B」送外卖2 Floyd+状压dp
题目描述 一张$n$个点$m$条边的有向图,通过每条边需要消耗时间,初始为$0$时刻,可以在某个点停留.有$q$个任务,每个任务要求在$l_i$或以后时刻到$s_i$接受任务,并在$r_i$或以前时刻 ...
- JavaScript实现键盘操作页面跳转
对于使用笔记本的同学来说,鼠标操作比较费劲,键盘操作比较方便,下面是一段JavaScript写的,用键盘来实现页面跳转.把location后面的改成你要跳转的地址即可,示例是用方向键实现日志页面的前一 ...
- 【题解】HNOI2008GT考试
这题好难啊……完全不懂矩阵加速递推的我TAT 这道题目要求我们求出不含不吉利数字的字符串总数,那么我们有dp方程 : dp[i][j](长度为 i 的字符串,最长与不吉利数字前缀相同的后缀长度为 j ...
- [Leetcode] word ladder 单词阶梯
Given two words (start and end), and a dictionary, find the length of shortest transformation sequen ...
- BZOJ3529 [Sdoi2014]数表 【莫比乌斯反演】
3529: [Sdoi2014]数表 Time Limit: 10 Sec Memory Limit: 512 MB Submit: 2151 Solved: 1080 [Submit][Status ...
- git clone 出错 fatal: pack has bad object at offset 26060927: inflate returned -3
$ git clone http://xxx.xxx.cn/liyafei/developer.gitCloning into 'developer'...remote: Counting objec ...
- 使用babel把es6代码转成es5代码
第一步:创建一个web项目 使用命令:npm init 这个命令的目的是生成package.json. 执行第二步中的命令后生成的package.json的文件的内容是: { "name&q ...