Matlab绘图控制命令
[转载]
图形的控制与表现 (Figure control and representation)
MATLAB提供的用于图形控制的函数和命令:
axis: 人工选择坐标轴尺寸.
clf: 清图形窗口.
ginput: 利用鼠标的十字准线输入.
hold: 保持图形.
shg: 示图形窗口.
subplot: 将图形窗口分成N块子窗口。
1.图形窗口(figure window)
(1). 图形窗口的创建和选择(Creating and selecting of figure window)
figure(n):用于为当前的绘图创建图形窗口,每运行一次figure就会创建一个新的图形窗口,n表示第n个窗口,如果窗口定义了句柄,也可以用figure(h)将句柄h的窗口作为当前窗口。
clf :用于清除当前图形窗口中的内容。
shg :用于显示当前图形窗口。
(2). 在一个图形窗口中绘制多个子图形(Drawing several subfigures in a single window)
subplot(m,n,p):把窗口分成m×n个小窗口,并把第p个窗口当作当前窗口。
例:将4 个图形显示在同一个图形窗口中。
t=0:pi/20:2*pi; [x,y]=meshgrid(t);
subplot(2,2,1); plot(sin(t),cos(t)); axis equal
subplot(2,2,2); z=sin(x)+cos(y); plot(t,z); axis([0 2*pi –2 2])%坐标轴范围为:横坐标为0--2Pi,纵坐标为-2--2
subplot(2,2,3); z=sin(x).*cos(y); plot(t,z); axis([0 2*pi –1 1])
subplot()=sin(x).^2-cos(y).^2;plot(t,z); axis([0 2*pi –1 1])%subplot();同于subploat(2,2,4);
(3). 在一个已有的图形上绘图(Drawing a figure on the figure was existed)
hold on :在一个已有的图形上继续绘图;
hold off: 命令结束继续绘图。
例:将peaks函数的等高线图与伪彩色画在一起。
[x,y,z]=peaks; %产生双变量数组
contour(x,y,z,20,'k') %绘制等高线
hold on pcolor(x,y,z)
%绘制伪彩色图
shading interp %表面色彩渲染
hold off
2.坐标轴控制命令(Axis control commands)
控制坐标性质的axis函数的多种调用格式:
axis(xmin xmax ymin ymax):指定二维图形x和y轴的刻度范围,
axis auto :设置坐标轴为自动刻度(缺省值)
axis manual(或axis(axis)) :保持刻度不随数据的大小而变化
axis tight :以数据的大小为坐标轴的范围
axis ij :设置坐标轴的原点在左上角,i为纵坐标,j为横坐标
axis xy :使坐标轴回到直角坐标系
axis equal :使坐标轴刻度增量相同
axis square :使各坐标轴长度相同,但刻度增量未必相同
axis normal :自动调节轴与数据的外表比例,使其他设置失效
axis off :坐标轴消隐
axis on :显现坐标轴
(1) 坐标轴的范围(Domain of coordinates axis)
二维图形坐标轴范围在缺省状态下是根据数据的大小自动设置的,如欲改变,可利用axis(xmin xmax ymin ymax),函数来定义。
例: 定义坐标轴范围对观察图形的影响。
x=0:.01:pi/2; figure(1); plot(x,tan(x),'-ro') %ymax=tan(1.57),而其他数据都很小,结果将 %使图形难于进行观察和判断。
figure(2); plot(x,tan(x),'-ro'); axis([0, pi/2,0,5]) %对坐标轴的范围进行控制就可得到较满意的绘图结果
(2) 显示比例对绘图结果的影响(Effect of display scaling on plotting results)
例:比较(Default, axis square, axis equal, axis tight)几种不同的显示方式的显示效果。
t=0:pi/20:2*pi; figure(1);subplot(2,1,1); plot(sin(t),2*cos(t)); grid on %缺省状态下的图形比例
subplot(2,1,2); plot(sin(t),2*cos(t)); axis square; grid on %正方形的显示比例
figure(2) subplot(1,2,1); plot(sin(t),2*cos(t)) ; axis equal; grid on %具有相等的刻度比例
subplot(1,2,2); plot(sin(t),2*cos(t)); axis tight ; grid on %紧缩形式
3.图形标注(Marking on the figure):MATLAB的图形标注方法(表 6—7)
title :标题,
xlabel :x轴标注, ylabel :y轴标注,
text :任意定位的标注
gtext :鼠标定位标注,
legent :标注图例
图形标注可以使用字母,数字,汉字或按规定的方法表示希腊字母。如:
\pi表示π,\leq表示≤,\rm表示后面的字恢复为正体字,\it表示斜体字,FontSize表示字体的大小, FontName表示字体的类型等。
可以使用图形窗口的Insert菜单,也可以使用属性编辑器,还可以使用函数输入的方法加标注,以下介绍相关函数的使用方法。
(1). 加注坐标轴标识和图形标题(Add axis labels and title of figure)
加注坐标轴标识:xlabel(‘s’), ylabel(‘s’)
图形标题: title(‘s’)
例:加注坐标轴标示和图形标题。
t=0:pi/100:2*pi;y=sin(t); plot(t,y)
axis([0 2*pi,-1 1]);
xlabel('0 \leq \itt \rm \leq \pi','FontSize',16) ;
ylabel('sin(t)','FontSize',20);
title('正弦函数图形','FontName','隶书','FontSize',20);
(2). 图中加注文本(Add text in the figure)
text(x,y,’字符串’)
例:在上图中加语句。
t=0:pi/100:2*pi; y=sin(t); plot(t,y) axis([0 2*pi,-1 1])
xlabel('0 \leq \itt \rm \leq \pi','FontSize',16)
ylabel('sin(t)','FontSize',20)
title('正弦函数图形','FontName','隶书','FontSize',20)
text(3*pi/4,sin(3*pi/4),'\leftarrowsin(t)=0.707', 'FontSize',16)
text(pi,sin(pi),'\leftarrowsin(t)=0', 'FontSize',16)
text(5*pi/4,sin(5*pi/4),'sin(t)=-0.707\rightarrow','FontSize',16,'HorizontalAlignment','right')
句中: leftarrow 表示加一个向左的箭头 rightarrow 表示加一个向右的箭头 HorizontalAlignment 表示右对齐水平排列
gtext('字符串'): 在图形窗口上用鼠标直接在指定的位置上加注文本。
例: t=0:pi/100:2*pi; y=sin(t); plot(t,y) axis([0 2*pi,-1 1])
xlabel('0 \leq \itt \rm \leq \pi','FontSize',16)
ylabel('sin(t)','FontSize',20)
title('正弦函数图形','FontName','隶书','FontSize',20)
gtext('MATLAB')
(3). 指定TeX字符
例:在标题中指定TeX字符 t=0:pi/100:2*pi; alpha=-0.8; beta=15; y=sin(beta*t).*exp(alpha*t); plot(t,y)
title('{\itAe}^{-\it\alpha\itt}sin\it\beta{\itt}\it\alpha<<\it\beta')
xlabel('时间\mus.'),
ylabel('幅值')
在title中的字符串表现的是 Aeαt sinβt α<<β 斜体Ae 上标斜体αt 斜体βt 斜体α 斜体β
(4). 在图形中添加图例框(Add legend in the figure)
legend(字符串1,字符串2,…)
例:在当前图形中添加图例说明。
x=0:pi/10:2*pi; y1=sin(x); y2=0.6*sin(x); y3=0.3*sin(x); plot(x,y1,x,y2,'-o',x,y3,'-*')
legend( '曲线1','曲线2','曲线3') legend('boxoff') legend函数的其他功能见(表 6—8)
4. 图线形式和颜色(Style and color of plot) (1). 图线的形式: (style of plot)
四种线形: 实线'-',虚线'--', 点线':',点划线'-'. 标记点类型:点'.', 圆'o', 加号'+', 星号'*', x符号'x', 方形's', 菱形'd', hexagram 'h'
上三角△ '^', 下三角▽ 'v', 左三角'<', 右三角'>', 正五边形'p'
命令:plot(x,y,'—'), plot(x1,y1,':’,x2,y2,'*') 例1:选择不同的线形绘图。 t=0:pi/100:2*pi; y=sin(t); y2=sin(t-0.25); y3=sin(t-0.5); plot(t,y,'-',t,y2,'-',t,y3,':') 例2:选择不同的标记点绘图。 t=0:pi/20:2*pi; x=t.^3; y=sin(t); plot(x,y,'o')
(2). 线的颜色(color of plot)
可选颜色: 红r,绿g, 蓝b, 黄y, 粉红m, 青c, 黑k. 例:t=0:pi/20:2*pi; y=sin(t); plot(x,y,'r'), plot(x,y,'g+')
(3). 图线的其他属性(other characters of plot)
设置图线的宽度 : 'LineWidth'
标记点的边缘颜色: 'MarkerEdgeColor'
填充颜色 : 'MarkerFaceColor'
标记点的大小 : 'MarkerSize'
例: 设置图线的线形、颜色、宽度、标记点的颜色及大小。
t=0:pi/20:pi; y=sin(4*t).*sin(t)/2;
plot(t,y,'-bs','LineWidth',2,'MarkerEdgeColor','k', 'MarkerFaceColor', 'y','MarkerSize',10);
Matlab绘图控制命令的更多相关文章
- Matlab绘图详解
Matlab绘图 强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数.此外,M ...
- Matlab绘图(一二三维)
Matlab绘图 强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数.此外,M ...
- (转载)MatLab绘图
转载自:http://www.cnblogs.com/hxsyl/archive/2012/10/10/2718380.html 转载自:http://www.cnblogs.com/jeromebl ...
- matlab绘图(详细)(全面)
Matlab绘图 强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数.此外,M ...
- Matlab 绘图完整入门
Matlab绘图 强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数.此外,M ...
- 详尽全面的matlab绘图教程
Matlab绘图 强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数.此外,M ...
- Matlab 绘图全方位分析及源码
Matlab绘图 强大的绘图功能是Matlab的特点之一,Matlab提供了一系列的绘图函数,用户不需要过多的考虑绘图的细节,只需要给出一些基本参数就能得到所需图形,这类函数称为高层绘图函数.此外,M ...
- Matlab绘图系列之高级绘图
Matlab绘图系列之高级绘图 原帖地址: http://blog.163.com/enjoy_world/blog/static/115033832007865616218/ Matlab绘图 20 ...
- 【MATLAB】常用命令快速入门,国赛加油
矩阵运算 矩阵的基本生成 m1 = 1:5 % 生成行矩阵[1,2,3,4,5] m2 = 1:2:10 % 起点:步长:终点 [1,3,5,7,9] linspace(x1,x2,n) % 生成 n ...
随机推荐
- Codeforces 332B Maximum Absurdity(DP+前缀和处理)
题目链接:http://codeforces.com/problemset/problem/332/B 题目大意:给你n个数和一个整数k,要求找到不相交的两个长度为k的区间,使得区间和最大,输出这两个 ...
- volatile 学习笔记
全面理解Java内存模型(JMM)及volatile关键字 正确使用 Volatile 变量 Java内存模型 在并发编程中,需要处理两个关键问题:线程之间如何通信及线程之间如何同步.通信是指线程之间 ...
- eclipse中Maven项目jar问题
eclipse中Maven项目jar包下载下来了,不然我们import是时候根本导入不进来,网上的方法都试过了,Maven仓库也清空过后重新下载过了,都解决不了. 后来发现虽然jar包是下载下来了,可 ...
- (一)问候 HttpClient
第一节: HttpClient 简介 HttpClient 是 Apache Jakarta Common 下的子项目,可以用来提供高效的.最新的.功能丰富的支持 HTTP 协议的客户端编程工具包,并 ...
- 2015309南皓芯实验二 Java面向对象程序设计
一.实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 实验要求 1.没有Linux基础的同学建议先学习< ...
- java通过POI和easypoi实现Excel的导出
前言 在工作经常会遇到excel导出报表的功能,自己也做过一些,然后在项目里看到同事封装的一个excel导出工具类,着实不错,拿来分享一下.然后,又在网上看到一个使用easypoi实现cxcel导出的 ...
- drools7 (一、最简单的例子)
切记!!! 必须使用jdk1.8 工程目录 引入依赖包,pom.xml <?xml version="1.0" encoding="UTF-8"?> ...
- 【58沈剑架构系列】为什么说要搞定微服务架构,先搞定RPC框架?
第一章聊了[“为什么要进行服务化,服务化究竟解决什么问题”] 第二章聊了[“微服务的服务粒度选型”] 今天开始聊一些微服务的实践,第一块,RPC框架的原理及实践,为什么说要搞定微服务架构,先搞定RPC ...
- Asp.Net MVC Razor视图引擎与My97DatePicker插件的结合
using System; using System.Collections.Generic; using System.Runtime.CompilerServices; using System. ...
- [漏洞复现]CVE-2018-4887 Flash 0day
1.漏洞概述 2018年2月1号,Adobe官方发布安全通报(APSA18-01),声明Adobe Flash 28.0.0.137及其之前的版本,存在高危漏洞(CVE-2018-4878). 攻击者 ...