MATLAB等高线命令
matlab做隐函数的等值(高)线等值面
matlab做隐函数的等值(⾼)线等值⾯2维及3维空间上隐函数的等值⾯(线)图2维,3维的⽬的都⼀样,就是做出隐函数表⽰的结构图,将函数值为0的点视为表⾯并显⽰出来,然后计算等值线(⾯)所围之外的⾯积(体积)占整个空间的⾯积(体积)的百分⽐。
⼀.2维平⾯隐函数等值线2维平⾯上的等值线图使⽤contourf函数就可以实现。
应该也有许多其他⽅法。
使⽤函数z=\cos(x)*\cos(y)+0.51. 做出带填充的等值(⾼)线图clear all;clc;% 给出定义域,⽣成⽹格。
x = 0:0.01:2*pi;y = 0:0.01:2*pi;[X, Y] = meshgrid(x, y);% 给出隐函数表达式Z = cos(X).*cos(Y)+0.5;% 做等值线图ax = figure;[M, C] = contourf(X, Y, Z);axis off;C.LineWidth = 1;C.ShowText = 'on';⽣成的图像为:根据⼆元函数求极值的⽅法,\frac{\partial f}{\partial x},\frac{\partial f}{\partial y}都等于0,且\frac{\partial^2 f}{\partial x^2}\frac{\partial^2 f}{\partial y^2} - (\frac{\partial^2 f}{\partial x \partial y})^2 > 0,则x,y为函数极值点,若\frac{\partial^2 f}{\partial x^2}和\frac{\partial^2 f}{\partial y^2}都⼤于0,则为极⼩值,都⼩于0,则为极⼤值。
求出函数的极⼤值点分别为(0, 0)、\left(\pi,\pi\right),函数值为1.5。
极⼩值点分别为(0, \pi)、(\pi, 0),函数值为-0.5。
MATLAB复习题
习
题
1、Simulink的仿真模型主要由 输入模块 、 状态模块 、输出模 块 三个部分构成。
2、建立仿真模型的过程主要由 模型结构分析、模块的复制、模块 连接、参数设置(模块参数及仿真参数)、运行仿真 五个步骤完 成。
习
1、提示从键盘输入变量的命令为:
题
input
2、在m文件中,用于暂停程序执行的命令为:
【 A 】
10、在MATLAB语言中,下列常用操作命令解释错误的是 A、dir为显示当前目录下的文件 C、path为显示搜索目录 E、clear为清除命令窗口中的内容 11、若只知要搜索函数的前两个字母,可用 B、clc为清除工作区中的变量 D、clf为清空当前图形窗口 F、path为显示搜索路径
【 BE
pause
函数文件
3、如果M文件的可执行语句以function 开始,则该文件为 定义全局变量 while if 和 和 for switch
5、在M 文件中,对流程控制实现循环结构的语句有 6、在M 文件中,对流程控制实现选择结构的语句有
【 B
】
7、在MATLAB语言中,提示其后语句为输入指令的行提示符为
C、“,” D、“>>”
【 D
】
8、在MATLAB语言中,在指令窗口运行过的指令再次调出运行的按键为 B、“↑” 或“↓” B、“:” C、“,” D、“>>”
【 B
】
9、在MATLAB语言中,若希望结果不被显示,可在语句之后加上符号 C、“,” D、“>>”
】
lookfor 命令搜索此关键字的帮助信息。
12、在MATLAB语言中,可采用
Tab
键进行模糊查询。
MATLAB 常用函数3 绘图函数及命令
MATLAB 常用函数3 绘图函数及命令By D. J. Liu1绘图函数(1) plot (二维线图)plot (x, y, ‘r*-’, ‘linewidth’, 5, ‘markersize’, 5)linewidth 设置线条的宽度markersize 设置点的大小(2) plot3 (三维线图)plot3 (X, Y, Z, ‘r*-, ‘linewidth’, 5, ‘markersize’, 5)linewidth 设置线条的宽度markersize 设置点的大小(3) scatter (二维散点图)scatter (X, Y, ‘S’)S设置点的形式、大小及颜色等属性(4) scatter3 (三维散点图)scatter3 (X, Y, Z, ‘S’)S设置点的形式、大小及颜色等属性(5) subplot (子图绘制)subplot(m,n,p)m行, n列, p当前位置(将一个窗口分成m×n个小窗口)(6) mesh (三维网格图)mesh (X, Y, Z)注意:X和Y必须为向量,如果X和Y的长度分别为m和n,则Z必须为m×n的矩阵,即[m,n]=size(Z),在这种情况下网格线的顶点为(X(j),Y(i),Z(i,j))。
(7) surf (三维曲面图)surf (X, Y, Z)surf的调用方法与mesh命令类似,不同的是mesh函数绘制的图像是一个网格图,而surf命令绘制得到的是着色的三维曲面。
着色的方法是在得到相应的网格后,对每个网格依据该网格所代表的节点的色值来定义这一网格的颜色。
注意:第一,surf只支持笛卡尔坐标系(直角坐标系)。
第二,如果要让曲面圆滑,去掉网格,只需要在绘图命令后加入shading interp,这样matlab就会进行相应插值。
注意:X和Y必须为向量,如果X和Y的长度分别为m和n,则Z必须为m×n的矩阵,即[m,n]=size(Z),在这种情况下网格线的顶点为(X(j),Y(i),Z(i,j))(8) pie3(X)(三维饼图)pie3(X) 用X中的数据画一个三维饼形图(百分比例),X中的每一个元素代表三维饼形图中的一部分。
[matlab数据拟合曲线]matlab获取等高线的数据
[matlab数据拟合曲线]matlab获取等高线的数据篇一: matlab获取等高线的数据contour画出Z在向量v所有值处的等高线,如只想画出Z在i处的等高线,则调用contour。
如果没有图形,可以将contour3试试看。
另外,若想获得某一等高线处的具体数据,则用[c,h]=contour.其中c中即包含等高线的信息,即对应Z=i处的xdata向量和ydata向量。
直接调用c就可以了,一般情况下xdata向量和ydata向量过长,显示的时候是分段显示的dim1,dim2...表示接下来一段显示的[xdata,ydata]的长度,如下:C = [value1 xdata xdata... value2 xdataxdata...;dim1 ydataydata...dim2 ydataydata...]为方便查看,调用C’更清晰。
另外,读取任一matlab的fig图的数据的方法如下:open; %打开图Ih=findall;%获得曲线的句柄xc=get;yc=get;另外注意:contour draws acontour plot of matrix Z, where Z is interpreted as heights withrespect to the x-y plane. Z must be at least a 2-by-2 matrix. Thenumber of contour levels and the values of the contour levels arechosen automatically based on the minimum and maximum values of Z.The ranges of the x- and y-axis are[1:n] and [1:m], where [m,n] = size.不要颠倒了!故调用时:i=1;for a4=-a:delta:ak=1;for a5=-b:delta:bf=int0;%给二维矩阵f赋值,调用int0函数k=k+1;endi=i+1;enda4=-a:delta:a;a5=-b:delta:b;meshgrid;%meshgrid产生网格[c,h]=contour3;%将f转置一下才能和meshgrid相匹配!篇二: 数据曲线拟合及MA TLAB实现刘连香摘要:本文介绍了数学建模和数据曲线拟合的原理方法,并给出了非线性曲线拟合的最小二乘法的MA TLAB实现过程,解决了一个医学上的实际问题――给药方案制定问题。
matlab等高线间隔
Matlab等高线间隔介绍等高线是地图上常见的一种表示地形高度的图形展示方式。
在Matlab中,我们可以使用等高线图来展示数据的分布情况。
等高线图可以帮助我们观察数据的变化趋势,进而进行进一步的研究和分析。
在本文中,我将介绍如何在Matlab中生成等高线图,并讨论如何调整等高线的间隔。
生成等高线图在Matlab中,我们可以使用contour函数生成等高线图。
该函数的基本语法如下:contour(X,Y,Z)其中,X和Y是表示数据点位置的矩阵,Z是对应的数据值矩阵。
X和Y可以使用meshgrid函数生成。
例如,如果有一个包含高度信息的数据矩阵H,我们可以使用以下代码生成对应的X、Y和Z:[X,Y] = meshgrid(1:size(H,2), 1:size(H,1));Z = H;然后,我们可以调用contour(X,Y,Z)函数生成等高线图。
调整等高线间隔在生成等高线图时,我们可以通过调整等高线的间隔来改变图像的展示效果。
Matlab提供了一些函数和选项来实现这一目的。
等高线间隔选项在使用contour函数生成等高线图时,可以通过指定额外的参数来调整等高线的间隔。
其中一个常用的参数是LevelStep,它可以指定等高线之间的间隔大小。
例如,如果想要设置等高线的间隔为10,可以使用以下代码:contour(X,Y,Z,'LevelStep',10)此外,还可以使用contourc函数以矩阵的形式返回等高线线段的信息,然后通过调用[C,h] = contour(X,Y,Z)函数来获取等高线线段的句柄h,进而对其进行修改。
例如,可以使用以下代码将等高线的间隔设置为10:[C,h] = contour(X,Y,Z);set(h,'LevelStep',10)动态调整等高线间隔除了在生成等高线图时通过参数指定等高线间隔,还可以在生成后动态地调整等高线间隔。
Matlab提供了一些函数和方法来实现这一功能。
matlab
45.产生极坐标图象的命令为:polar ( theta, r)。此命令用法类似于plot,很多plot 可用的选项polar 同样可用。
46.plot 的很多选项在loglog 中也可以使用。我们还有另外两个选择可用,第一个是semilogx(x, y),它产生的图象x 轴使用对数值,y 轴仍然用直接值;相应地,semilogy(x, y)产生的图象y 轴使用对数值,x 使用直接值。
40.fplot和plot的区别:fplot 函数绕过选择用来绘图的时间间隔,而自动为我们决定绘图的点数。一般地,fplot 为你产生尽可能精确的的图象,同时它也帮助我们绕过像这样的错误。调用fplot 的形式如 fplot('function string', [xstart, xend]) 。
y)完全一样。要产生堆合柱状图,我们写成bar(x, y, 'stacked')。
59.在等号“=”前面加上否定号“~”表示“不相等”,if sizex(2) ~= sizeN(2)。
60.使用disp命令在屏幕上打印出错误信息。disp('错误:数据必须具有相同的维数。')
61.求中位数:>> md = median(A);
42.添加图例:专业的图象总是附有图例,告诉读者某个曲线是什么。legend('sinh(x)','cosh(x)')
43.令如何设置绘图范围。可以通过调用axis 命令:axis ( [xmin xmax ymin ymax] )
44.子图即是在一个图上显示多于一个图象。绘制子图使用命令subplot(m, n, p),这里m 和n 告诉MATLAB 产生的产生的子图有m 行和n 列,p 用来告诉MATLAB 我们所要贴上去的某个已经绘制的图形窗口。
matlab 等高线
matlab 等高线Matlab等高线Matlab是一种被广泛应用于科学和工程领域的数值分析和数据可视化软件。
在Matlab中,等高线(contour)是一种十分常用的数据可视化技术,能够直观地展示二维数据的变化。
等高线图由若干个等高线构成,每条等高线代表着相同数值的点。
本文将介绍Matlab中等高线的绘制方法、参数设置以及如何更好地定制等高线图。
一、Matlab等高线的绘制方法Matlab提供了contour函数来实现等高线图的绘制。
其基本语法如下:contour(Z) % Z为一个二维矩阵,表示待绘制的数据该函数可以用来绘制Z中各点的等高线。
当然,还可以通过一些可选参数来进行更多的定制。
例如,要绘制矩阵Z的等高线图,可以使用以下代码:Z = [1 2 3; 4 5 6; 7 8 9];contour(Z);二、Matlab等高线的参数设置contour函数支持许多可选参数,可以用来调整等高线图的外观和细节。
下面介绍一些常用的参数:1. levels:可以通过levels参数来设定绘制的等高线的数量,其语法为:contour(Z, levels)其中,levels为一个向量,包含了要绘制的每条等高线的数值。
例如,我们可以通过以下代码绘制等高线图,并指定每个等高线的数值:Z = [1 2 3; 4 5 6; 7 8 9];levels = [2 4 6 8];contour(Z, levels);2. 'LineColor':可以通过设置LineColor参数来指定等高线的颜色。
其语法为:contour(Z, 'LineColor', color)其中,color可以是预设颜色、RGB颜色值或16进制颜色代码。
例如,我们可以通过以下代码将等高线的颜色设置为红色:Z = [1 2 3; 4 5 6; 7 8 9];contour(Z, 'LineColor', 'r');3. 'LineWidth':可以通过设置LineWidth参数来指定等高线的宽度。
matlab绘制二元函数图形
MATL AB绘制二元函数的图形【实验目的】1.了解二元函数图形的绘制。
2.了解空间曲面等高线的绘制。
3.了解多元函数插值的方法。
4.学习、掌握MATLAB软件有关的命令。
【实验内容】画出函数22yz+=的图形,并画出其等高线。
x【实验准备】1.曲线绘图的MATLAB命令MATLAB中主要用mesh,surf命令绘制二元函数图形。
主要命令mesh(x,y,z)画网格曲面,这里x,y,z是数据矩阵,分别表示数据点的横坐标,纵坐标和函数值,该命令将数据点在空间中描出,并连成网格。
surf(x,y,z)画完整曲面,这里x,y,z是数据矩阵,分别表示数据点的横坐标,纵坐标和函数值,该命令将数据点所表示曲面画出。
【实验重点】1. 二元函数图形的描点法2. 曲面交线的计算3. 地形图的生成【实验难点】1. 二元函数图形的描点法2. 曲面交线的计算【实验方法与步骤】练习1画出函数22y=的图形,其中]3,3xz+⨯-yx。
∈,[]3,3[(-)用MATLAB作图的程序代码为>>clear;>>x=-3:0.1:3; %x的范围为[-3,3]>>y=-3:0.1:3; %y的范围为[-3,3]>>[X,Y]=meshgrid(x,y); %将向量x,y指定的区域转化为矩阵X,Y >>Z=sqrt(X.^2+Y.^2); %产生函数值Z>>mesh(X,Y,Z)运行结果为图5.3如果画等高线,用contour,contour3命令。
contour画二维等高线。
contour3画三维等高线。
画图5.3所示的三维等高线的MA TLAB 代码为>>clear;>>x=-3:0.1:3;>>y=-3:0.1:3;>>[X,Y]=meshgrid(x,y);>>Z=sqrt(X.^2+Y.^2);>>contour3(X,Y,Z,10); %画10条等高线>>xlabel('X-axis'),ylabel('Y-axis'),zlabel('Z-axis'); %三个坐标轴的标记>>title('Contour3 of Surface') %标题>>grid on %画网格线运行结果为图5.4如果画图5.4所示的二维等高线,相应的MATLAB代码为>>clear;x=-3:0.1:3;y=-3:0.1:3;>>[X,Y]=meshgrid(x,y);Z=sqrt(X.^2+Y.^2);>>contour (X,Y,Z,10);>>xlabel('X-axis'),ylabel('Y-axis');>>title('Contour3 of Surface')>>grid on运行结果为如果要画z=1的等高线,相应的MATLAB代码为>>clear;x=-3:0.1:3;y=-3:0.1:3;>>[X,Y]=meshgrid(x,y);Z=sqrt(X.^2+Y.^2);>>contour(X,Y,Z,[1 1])运行结果为练习2 二次曲面的方程如下222222x y z d a b c++= 讨论参数a ,b ,c 对其形状的影响。
怎样用matlab画等高线
怎样用matlab画等高线?命令1 contour功能曲面的等高线图用法contour(z) 把矩阵z中的值作为一个二维函数的值,等高曲线是一个平面的曲线,平面的高度v是Matlab自动取的;contour(x,y,z) (x,y)是平面z=0上点的坐标矩阵,z为相应点的高度值矩阵。
效果同上;contour(z,n) 画出n条等高线;contour(x,y,z,n) 画出n条等高线;contour(z,v) 在指定的高度v上画出等高线;contour(x,y,z,v) 同上;[c,h] = contour(…) 返回如同contourc命令描述的等高矩阵c和线句柄或块句柄列向量h,这些可作为clabel命令的输入参量,每条线对应一个句柄,句柄中的userdata属性包含每条等高线的高度值;contour(…,’linespec’) 因为等高线是以当前的色图中的颜色画的,且是作为块对象处理的,即等高线是一般的线条,我们可象画普通线条一样,可以指定等高线的颜色或者线形。
clabel(C,v) 在给定的位置v上显示标签clabel(C,'manual') 允许用户通过鼠标来给等高线贴标签>>[x,y] = meshgrid(-2:.2:2);>>z = x.*y.*exp(-x.^2-y.^2);>>[C,h] = contour(x,y,z);>>clabel(C,h);命令3 contourc功能低级等高线图形计算命令。
该命令计算等高线矩阵c,该矩阵可用于命令contour,contour3和contourf等。
矩阵z中的数值确定平面上的等高线高度值,等高线的计算结果用由矩阵z维数决定的间隔的宽度。
用法C = contourc(Z) 从矩阵z中计算等高矩阵,其中z的维数至少为2*2阶,等高线为矩阵z中数值相等的单元。
等高线的数目和相应的高度值是自动选择的。
matlab画图常用命令
matlab画图常用命令clc 清理命令窗口历史内容clear 清除所有内存存储的变量值clf 清除图形whos 显示各变量信息sqrt 开方edit 开编辑窗口linspace(a,b,N) 定义等差数列,a初值,b末值,N步数(即数据个数)logspace(a,b,N) 定义等比数列,初值10^a,末值10^b,N步数(即数据个数)A.*B 矩阵点乘,对应项相乘A./B 矩阵点除A.^B 矩阵点方(指数相同也要用点方)A=[a:n:b] 定义以a为开始,步长为n的等差数列,最后一个数不超过b(n省略代表步长为1)A' 矩阵转置A=[B,C;D] 矩阵拼凑e *10^exp e^format long 后续数据显示小数点后15位format short 后续数据显示小数点后4位format bank 后续数据显示小数点后2位(不适用于复数)format long/short e 后续数据科学技术法显示,并且小数点后15位/4位format long/short eng 后续数据类似科学技术法显示,但指数保持为3的整数倍,并且有效位数(15位+1/4位+1)format + 矩阵中各元素只显示正负,零为空格format rat 以分数形式显示有理数format long/short g Matlab自定最优显示load/save +文件名载入/储存工作区数据rem(a,b) a/b的余数size(A) A矩阵的大小[行数列数]ylim([0,1])help 打开帮助界面help+帮助界面中对应标题查看对应函数的使用nthroot(x,n) x的n次实数根sign(x) x大于零输出1;x等于零输出0;x小于零输出-1log10(x) lg(x)log(x) ln(x)【注:logb(a)=ln(a)/ln(b)】fix(x) 取整round(x) 对x四舍五入floor(x) 对x向负取整ceil(x) 对x向正取整factor(x) 对x因式分解gcd(a,b) 求a,b最大公约数lcm(a,b) 求a,b最小公倍数rats(x) 用分数表示xfactorial(x) x!nchoosek(n,k) 组合数n选kprimes(x) 找出小于x的素数isprime(x) x是素数,返回1sin(),cos(),tan()... 自变量为弧度asin(),acos(),atan()... 结果为弧度max(x),min(x) x适量中的最大、最小值[a,b]=max(A) A为一行时,a为最大值,b为最大值单行位置A为m行n列时,a为m行向量,对应各列最大值,b为m行向量,对应各列最大值在该列位置多个最大值时,位置默认第一个max(A,B) A、B同大,结果为A,B中对应位置最大值的汇总矩阵mean()/median()/mode() 求平均值/中位数/众数(众数选最小值)cumsum/cumprod(A) 求A的累加/累乘结果,生成与A同大小矩阵,(列运算)单矩阵运算sum/prod(A) A矩阵列求和/求积或求行向量和/积sort(A)/sort(A,'descend') 将A升序/降序排列(行向量自身升序/降序,矩阵列升序/降序)sortrows(A,n) 按第n列排列各行,n正升序,n负降序,n省略第一列升序size(x)/[a,b]=size(x) 返回[行数,列数]/给a、b赋值length(A) 矩阵A的最大长度(行数和列数的最大值)std(A) 求A的标准差(行向量自身求解,矩阵列求解)var(A) 求A的方差(行向量自身求解,矩阵列求解)rand/randn(m,n) 生成(0,1)m×n随机数矩阵/生成均值为0,标准差为1的高斯随机数矩阵(正态分布)【通过randn(m,n)*std+mean可得到均值为mean,标准差为std的正态分布随机数矩阵】A+B*i(complex(A,B)) 生成复数或复数矩阵real(A)/imag(A) 求实部/虚部isreal(A) 实数返回1coni(A) 求共轭【或用A'也可,但会发生行列互换】x为复数时abs(x)/angle(x) 求复数的模,与水平方向的夹角realmax/realmin 返回MATLAB能够使用的最大/最小浮点数intmax/intmin 返回MATLAB能够使用的最大/最小整数pi/i/j 圆周率/虚数/虚数clock 当前时间(一般使用fix(clock)增加可读性)date 返回日期,以字符串形式eps 返回MATLAB最小间隔矩阵A(n,:)/(:,m)【A(n,end)/(end,m)】A矩阵的第n行【最后一列】/第m列【最后一行】[A,B]=meshgrid(a,b),A.*B a,b为行向量,运行结果得a*b的m*n 维矩阵【meshgrid(x)等价于meshgrid(x,x)】zeros(m)/(m,n) m*m/m*n全零矩阵ones(m)/(m,n) m*m/m*n全一矩阵diag(A) 取对角元素为列向量diag(x) 若x为行向量或列向量,结果为对角阵其他元素为零diag(A,n/-n) 对角线右上/左下第n斜线上的元素fliplr(A)/flipud(A) A矩阵列/行进行对称翻转magic(m) 创建m*m维魔方矩阵作图xlabel/ylabel('') 添加x/y轴坐标title('') 添加表头grid 使图像出现网格figure(x) 创建或打开figure x窗口,之后作图均在该窗口进行hold on 保持图像窗口中之前的图像,进而在此作图不会清除之前图像(hold off取消)plot(x1,y1,x2,y2) 同时做两个图像plot(x) x为行向量,则以点数1至n为横轴,x为纵轴作图,按顺序依次连线plot(A) A为m*n矩阵,则图像为那条曲线,每条曲线横轴均为1至m,纵轴为相应列对应值plot(x,A) 以x为横轴,A的每一列为纵轴作图(x与A同维)plot(A,B) A与B需同维,对应列分别作为横轴和纵轴作图plot('标识符') 线型:-实线:点-.点画线--虚线点型:.点o圆圈xx形状+加号*星号s方形d菱形v下三角^上三角<左三角>右三角p五角星h六角星颜色:b蓝色g绿色r红色c青色m洋红色y黄色k黑色w白色【注】,多重输出可多重设定axis([a,b,c,d]) 限制图像x轴在[a,b],y轴在[c,d]legend('string1','string2',etc) 按照作图顺序添加图注text(x,y,'string') 在(x,y)处添加文本‘string’gtext('string') 添加文本‘string’,位置由鼠标点击确定【注】(适用于string形式)输入希腊字母需要'\'+希腊字母读法;^ 可出现上标,_ 可出现下标若想输出_或^,可用\+相应符号subplot(m,n,k) 将图形窗口划分成m行n列,所有的绘图操作都在一行一行数的第k个子图中进行【注】clf针对消除一个figure窗口内的内容,而plot等一系列操作针对一个子图中,且hold on/off被限于特定一个子图中,不影响其他子图polar(x,y) 绘制极图semilogx/semilogy(x,y) x轴对数,y轴线性/x轴线性,y轴对数作图loglog(x,y) 双对数坐标作图bar(x)/barh(x) x为矢量时,按x绘制垂直/水平条形图x为矩阵时,按各行分组绘制垂直/水平条形图bar3(x)/bar3h(x) 同上,绘制三维条形图pie(x)/pie3(x) 绘制(三维)饼状图。
matlab 等高线
matlab 等高线2篇第一部分:MATLAB等高线MATLAB(Matrix Laboratory)是一种高级技术计算和可视化软件,被广泛应用于科学、工程和金融等领域。
其中,MATLAB中的等高线绘制功能具有很大的实用价值。
等高线图可以根据数据集的数值变化,绘制出不同高度的曲线来展示数据的变化趋势和分布情况。
在本篇文章中,我们将介绍MATLAB中等高线的概念、绘制方法以及其在不同领域中的应用。
等高线图是一种二维图形表示方法,由等高线和等高线间的填充区域组成。
它主要用于可视化描述数据集中数值的变化。
在MATLAB中,我们可以使用contour函数来绘制等高线图。
该函数可以接受一个矩阵作为输入,并基于矩阵中的数值变化绘制出不同高度的等高线。
绘制等高线图的方法大致分为以下几步:1. 准备数据:首先需要准备一个矩阵作为输入数据,该矩阵表示一个二维区域内的数值分布情况。
2. 调用contour函数:使用contour函数来绘制等高线图,可以设置不同的参数来控制填充颜色、等高线线宽等效果。
3. 添加标题和标签:可以使用title和xlabel、ylabel函数为图像添加标题和标签,以便更好地解读图像。
4. 显示图像:最后使用colorbar函数来显示等高线图上的颜色对应的数值范围,方便观察者理解图像。
等高线图在科学、工程和金融等领域中有广泛的应用。
例如,在地理学中,等高线图可以展示地理高度的分布情况,帮助科学家研究地貌和地质活动。
在气象学中,等高线图可以展示气压系统的分布情况,帮助预测气候变化和天气状况。
在金融学中,等高线图可以展示股票价格的波动情况,帮助投资者制定交易策略。
综上所述,MATLAB中的等高线绘制功能为科学研究和数据分析提供了重要的工具。
通过绘制等高线图,我们可以更好地理解数据集中的数值变化和分布情况,从而进行更进一步的分析和决策。
无论是在学术研究、工程设计还是金融投资等领域,等高线图都发挥着重要的作用。
matlab绘图指令大全
绘图指令1 二维曲线图
调整坐标范围:axis axis([0,300,0,2])
1.5 图形修饰
设置颜色 y m c r g b w k 设置线型 - : -. --
设置标记 . o x + *
e=0.2*rand(size(X));
1.7 数值函数的二维图
可绘制系统函数,也可绘制自定义函数的图形。
2 三维曲线图
2.1 三维曲线plot3
3 曲面图形
3.2 三维网格mesh、meshc、meshz
利用peaks(50)作为模拟数据矩阵;
3.4 二元函数的伪彩色图pcolor
3.5 等高线contour
3.6 矢量场图quiver
Z=X.*exp(-X.^2-Y.^2);
3.7 视角控制view
视点控制方式及效果:
方位角、仰角控制方式及效果:缺省为(-37.5,30)。
3.8 多视区控制subplot
3.9 制作、播放动画
[x,y,z]=peaks(30); surf(x,y,z)
% 制作动画
m=moviein(5); % 5帧画面的动画变量
for i=1:5
view([1 1 i]) % 不断调整视点
m(:,i)=getframe; % 将当前画面作为帧保存到序列中end
% 播放动画
movie(m,2,1); % 每隔1秒播放1帧,循环播放2次3.10 示例:地形图
3.11 示例:汶川地形图
load dem.txt
mesh(dem)
4 数据特征的图形展示
以pdf结尾的函数,计算概率密度或概率;以cdf结。
matlab的基础用语含义
abs 绝对值, 模acos 反余弦acosh 反双曲余弦acot 反余切acoth 反双曲余切acsc 反余割acsch 反双曲余割all 所有元素均非零则为真alpha 透明控制angle 相角ans 最新表达式的运算结果any 有非零元则为真area 面域图asec 反正割asech 反双曲正割asin 反正弦asinh 反双曲正弦atan 反正切atan2 四象限反正切atanh 反双曲正切autumn 红、黄浓淡色axis 轴的刻度和表现B bbar 直方图binocdf 二项分布概率binopdf 二项分布累积概率binornd 产生二项分布随机数组blanks 空格符号bode 给出系统的对数频率曲线bone 蓝色调浓淡色阵box 坐标封闭开关break 终止最内循环brighten 控制色彩的明暗butter ButterWorth低通滤波器C ccaxis (伪)颜色轴刻度cd 设置当前工作目录cdf2rdf 复数对角型转换到实块对角型ceil 朝正无穷大方向取整cell 创建单元数组char 创建字符串数组或者将其他类型变量转化为字符串数组charfcn Maple函数Children 图形对象的子对象clabel 等高线标注class 判别数据类别clc 清除指令窗中显示内容clear 从内存中清除变量和函数clf 清除当前图形窗图形close 关闭图形窗collect 合并同类项Color 图形对象色彩属性colorbar 显示色条colorcube 三浓淡多彩交错色colordef 定义图形窗色彩colormap 设置色图comet 彗星状轨迹图comet3 三维彗星动态轨迹线图compass 射线图;主用于方向和速度cond 矩阵条件数conj 复数共轭continue 将控制转交给外层的for或while循环contour 等高线图contourf 填色等高线图conv 卷积和多项式相乘cool 青和品红浓淡色图copper 线性变化纯铜色调图corrcoef 相关系数cos 余弦cosh 双曲余弦cot 余切coth 双曲余切cov 协方差矩阵csc 余割csch 双曲余割cumsum 元素累计和cumtrapz 梯形法累计积分D ddblquad 二重(闭型)数值积分指令deconv 解卷和多项式相除del2 计算曲率demos 演示函数det 行列式的值diag 创建对角阵,抽取对角向量diff 求导数,差分和近似微分digits 控制符号数值的有效数字位数dir 列出目录清单dirac 单位冲激函数disp 显示矩阵和文字内容disttool 概率分布计算交互界面doc 列出指定工具包中所有函数名docsearch 进行多词条检索double 把符号常数转化为16位相对精度的浮点数值对象drawnow 刷新屏幕dsolve 求解符号常微分方程E eedit 矩阵编辑器,打开M文件Ei maple 指数积分eig 矩阵特征值和特征向量end 数组的最大下标,结束for,while,if 语句eps 浮点相对误差EraseMode 图形对象属性error 显示错误信息exit 关闭MATLABexp 指数expand 对指定项展开expm 矩阵指数eye 单位阵ezcontour 画等位线ezcontourf 画填色等位线ezmesh 画网线图ezmeshc 画带等位线的网线图ezplot 绘制符号表达式的二维图形ezplot3 画三维曲线ezpolar 画极坐标曲线ezsurf 画曲面图ezsurfc 画带等位线的曲面图F ffactor 进行因式或因子分解false 按指定大小创建全0逻辑数组feather 从X轴出发的复数向量图,羽毛图feval 函数宏指令fill 多边形填色图find 寻找非数单下标标识findsym 确认表达式中自由符号变量fix 朝零方向取整flag 红-白-蓝-黑交错色图fliplr 矩阵的左右翻转flipud 矩阵的上下翻转floor 朝负无穷大方向取整fminbnd 非线性函数在某区间中极小值fminsearch 单纯形法求多元函数极值点指令for (end) 按规定次数重复执行语句format 设置数据输出格式fourier Fourier变换fsolve 解非线性方程组的最简单格式function 函数文件头functions 观察函数句柄内涵function handle 函数句柄funfun 数值泛函函数和ODE解算器funm 计算一般矩阵函数fzero 单变量函数的零点G ggallery 产生测试矩阵gca 获得当前轴的柄gcf 获得当前图的柄general 通用指令get 获得图柄getframe 获得影片动画图象的帧ginput 用鼠标在图上获取数据global 定义全局变量gradient 梯度gray 线性灰度grid on/off 画坐标网格线H hheaviside 单位阶跃函数help 在线帮助指令helpbrowser 超文本文档帮助信息helpdesk 超文本文档帮助信息helpwin 打开在线帮助窗hidden 网线图消隐开关hist 统计频数直方图histfit 带拟曲线的统计频数直方图hold on/off 图形的保持horner 转换成嵌套形式hot 黑-红-黄-白交错色图hsv 饱和色彩图I ii, j 虚数单位if end 条件执行语句if-else-end 程序分支控制ifourier Fourier反变换ilaplace Laplace反变换imag 复数虚部image 图像impulse 给出系统的冲激响应ind2sub 据单下标换算出全下标inf 或Inf 无穷大inline 创建内联函数input 提示键盘输入int 计算积分int2str 整数转换为字符串inv 矩阵的逆invhilb Hilbert矩阵法求逆阵isa 判断指定变量类别ischar 若是字符串则为真isempty 若是空矩阵则为真isfinite 若是有限数则为真isglobal 若是全局变量则为真ishandle 是否图柄isinf 若是无穷大则为真isletter 串中是字母则为真islogical 若是逻辑数则为真isnan 若为非数则为真isnumeric 若是数值则为真isolate maple的特殊指令isprime 是否质数isreal 若是实数矩阵则为真isspace 串中是空格则为真iztrans Z反变换J jjacobian Jacobian 矩阵jet 变异HSV色图jordan Jordan分解K kkeyboard 键盘获得控制权L llaplace Laplace变换legend 形成图例说明length 确定数组长度light 灯光控制lighting 设置照明模式limit 求极限line 创建线对象LineStyle 图形线对象属性-线型LineWidth 图形属性-线宽linmod2 从SIMULINK模型得到系统的状态方程linspace 线性等分向量load 从磁盘调入数据变量Location 图形对象属性-位置log 自然对数log10 常用对数log2 以2为底的对数logical 将数值转化为逻辑值logspace 对数等分向量lookfor 关键词检索M mmagic 魔方阵maple 进入MAPLE工作空间计算Marker 图形对象属性-点形状MarkerEdge-Color 图形对象属性-点边界色彩MarkerFace-Color 图形对象属性-点域色彩MaekerSize 图形对象属性-点大小material 对象材质max 最大值md 创建目录mean 平均值mesh 三维网线图meshgrid 用于三维曲面的分格线坐标mfun 对MAPLE中若干经典特殊函数的数值计算mfunlist MAPLE经典特殊函数列表mhelp 查阅Maple中的库函数及其调用方法min 最小值minreal 状态方程最小实现mkdir 创建目录mod 模数求余more 命令窗口分页输出的控制开关movie 播放影片动画moviein 影片动画内存初始化mtaylor Taylor级数展开N nNaN或nan 非数nargin 函数输入量的个数nargout 函数输出量的个数ndims 数组的维数norm 矩阵或向量范数normcdf 正态分布累计概率normpdf 服从N分布的随机变量取值x的概率密度normrnd 产生服从N分布的随机数组notebook 创建或打开M-book文件null 零空间num2str 把数值转换为字符串numden 提取公因式O oode45 高阶法解微分方程ones 全1 数组optimsetorth 值空间P ppack 合并工作内存中的碎块pascal Pascal 矩阵path 控制MATLAB的搜索路径pathtool 修改搜索路径pause 暂停pcolor 用颜色反映数据的伪色图peaks 产生peaks图形数据pi 3.1415926535897….pie 饼形统计图pink 淡粉红色图阵plot 直角坐标下线性刻度曲线plot3 三维直角坐标曲线图plotyy 双纵坐标图polar 极坐标曲线图poly 特征多项式,由根创建多项式poly2sym 将多项式转换为符号多项式polyfit 多项式拟合polyval 求多项式的值polyvalm 求矩阵多项式的值pow2 2的幂pretty 习惯方式显示prism 光谱色图阵prod 元素积Q qquad 低阶法数值积分quadl 高阶法数值积分quit 退出MATLABquiver 二维箭头图;主用于场强、流向R rrand 均匀分布随机数组randn 正态分布随机数组random 产生各种分布随机数组randsrc 产生均布数组rank 秩real 复数实部realmax 最大浮点数realmin 最小正浮点数rem 求余数repmat 铺放模块数组reshape 矩阵变维residue 求部分分式表达return 返回roots 求多项式的根rose 频数扇形图;主用于统计rot90 矩阵逆时针旋转90度rotate 旋转指令round 四舍五入取整rref 转换为行阶梯形S ssave 把内存变量存入磁盘sec 正割sech 双曲正割set 设置图形对象属性shading 图形渲染模式shg 显示图形窗sign 函数符号,符号函数simple 运用各种指令化简符号表达式simplify 恒等式简化simulink 打开SIMULINK集成环境sin 正弦sinh 双曲正弦size 确定数组大小slice 切片图solve 求解代数方程组sphere 产生球面数据spinmap 颜色周期性变化操纵spring 青、黄浓淡色sqrt 平方根square 轴属性为方型ss 产生状态方程LTI对象stairs 阶梯形曲线图std 标准差stem 杆图stem3 三维离散杆图str2func 创建函数句柄(punct)strcmp 比较字符串String 图形对象属性-字符串subexpr 运用符号变量置换子表达式subplot 创建子图subs 通用置换指令sum 元素和summer 绿、黄浓淡色图阵surf 三维表面图surfc 带等高线的三维表面图switch-case 多个条件分支sym 产生符号对象syms 定义基本符号对象symsum 符号序列的求和T ttan 正切tanh 双曲正切taylor Taylor级数text 图形上文字标注tf 产生传递函数LTI对象tfdata 从对象中提取传递函数分子分母多项式系数tic 秒表起动title 图形名toc 秒表终止和显示trace 迹trapz 梯形数值积分true 按指定大小创建全1逻辑数组triplequad 三重(闭型)数值积分指令type 显示文件内容V vvar 求方差version MATLAB 版本view 设定3-D图形观测点vpa 给出数值型符号结果W wwhat 列出当前目录上的M、MAT、MEX文件which 确定指定文件所在的目录while end 不确定次数重复执行语句whitebg 图形底色控制who 列出工作内存中的变量名whos 列出工作内存中的变量细节winter 蓝、绿浓淡色X xxlabel X轴名标注xor 异或Y yYcolor 图形对象属性-纵轴颜色ylabel Y轴名标注Z zzeros 全零矩阵zlabel Z轴名标注zoom 二维图形的变焦放大ztrans Z变换Simulink模块Add 求和模块Breaker 开关Current Measurement 电流测量器Dc Voltage Source 直流电压源Discrete Filter 离散滤波器模块Gain 增益模块In1 输入端口模块Integrator 连续函数积分Out1 输出端口模块Parallel RLC Branch RLC并联支路PowerguiProduct 乘法器Random SourceScope 示波模块Series RLC Branch RLC串联支路Simulink SIMULINK基本库Sine Wave 正弦波输出Step 阶跃输出Transfer Fcn 传递函数模块Voltage Measurement 电压测量器一、MATLAB常用的基本数学函数abs(x):纯量的绝对值或向量的长度angle(z):复数z的相角(Phase angle)sqrt(x):开平方real(z):复数z的实部imag(z):复数z的虚部conj(z):复数z的共轭复数round(x):四舍五入至最近整数fix(x):无论正负,舍去小数至最近整数floor(x):地板函数,即舍去正小数至最近整数ceil(x):天花板函数,即加入正小数至最近整数rat(x):将实数x化为分数表示rats(x):将实数x化为多项分数展开sign(x):符号函数(Signum function)。
matlab基本语法
MATLAB简介MATLAB(MATrix LABoratory,即矩阵实验室)是MathWork公司推出的一套高效率的数值计算和可视化软件。
MATLAB是当今科学界最具影响力、也是最具活力的软件,它起源于矩阵运算,并已经发展成一种高度集成的计算机语言。
它提供了强大的科学运算、灵活的程序设计流程、高质量的图形可视化与界面设计、便捷的与其他程序和语言接口的功能。
MATLAB语言之所以如此受人推崇是因为它有如下这些优点:1.编程简单使用方便MATLAB的基本数据单元是既不需要指定维数、也不需要说明数据类型的矩阵,而且数学表达式和运算规则与通常的习惯相同。
因此,在MATLAB环境下,数组的操作与数的操作一样简单。
MATLAB的矩阵和向量操作功能是其他语言无法比拟的。
2.函数库可任意扩充由于MATLAB语言库函数与用户文件的形式相同,所以用户文件可以像库函数一样随意调用。
所以用户可根据自己的需要任意扩充函数库。
3.语言简单内涵丰富MATLAB语言中最重要的成分是函数,其一般形式为:Function [a,b,c…]=fun(d,e,f…)其中,fun是自定义的函数名,只要不与库函数名相重,并且符合字符串的书写规则即可。
这里的函数既可以是数学上的函数,也可以是程序块或子程序,内涵十分丰富。
每个函数建立一个同名的M文件,如上述函数的文件名为fun.m。
这种文件简单、短小、高效,并且便于调试。
4.简便的绘图功能MATLAB具有二维和三维绘图功能,使用方法十分简便。
而且用户可以根据需要在坐标图上加标题。
坐标轴标记。
文本注释及栅格等,也可一指定图线形式(如实线、虚线等)和颜色,也可以在同一张图上画不同函数的曲线,对于曲面图还可以画出等高线。
5.丰富的工具箱由于MATLAB的开放性,许多领域的专家都为MATLAB编写了各种程序工具箱。
这些工具箱提供了用户在特别应用领域所需的许多函数,这使得用户不必花大量的时间编写程序就可以直接调用这些函数,达到事半功倍的效果。
在Matlab中处理高维数据的技巧与方法
在Matlab中处理高维数据的技巧与方法Matlab是一种强大的数学软件,广泛应用于各个科学领域。
在处理高维数据时,Matlab提供了许多有用的技巧和方法。
本文将探讨在Matlab中处理高维数据的一些实用技术,帮助读者更好地利用这个软件。
在处理高维数据之前,了解如何读取和存储高维数据是非常重要的。
在Matlab 中,可以使用load命令来读取以.mat格式存储的数据。
这种格式可以保存各种类型的变量,包括矩阵、向量和结构体等。
一旦数据被读取,可以使用save命令将其保存到.mat文件中,以便以后使用。
处理高维数据的一个重要技巧是使用数组索引。
在Matlab中,可以使用单个索引或多个索引来访问特定的数组元素。
例如,如果有一个3维数组A,可以使用A(2,3,1)的方式访问该数组的特定元素。
此外,还可以使用冒号运算符来访问整个切片或维度的元素。
例如,A(1,:,:)表示访问第1行的所有元素。
Matlab还提供了一些有用的函数来处理高维数据。
例如,squeeze函数可以将多维数组压缩成较低维度的数组。
这对于可视化和分析数据非常有用。
另一个有用的函数是permute,它可以重新排列数组的维度顺序。
这在某些情况下可以简化数据处理过程。
此外,还有reshape函数可以改变数组的形状,以满足特定的需求。
对于高维数据的可视化,Matlab提供了许多强大的绘图函数。
例如,image函数可以将二维矩阵转化为彩色图像。
如果数据是三维的,可以使用volshow函数来显示三维体积数据。
此外,还可以使用contour函数来绘制等高线图。
根据需要,可以调整图形的外观和样式,以生成高质量的图形。
在Matlab中进行数据分析时,经常需要对高维数据进行统计计算。
Matlab提供了一些有用的函数来执行此类计算。
例如,mean函数可以计算数组或矩阵的均值。
std函数可以计算标准差,而cov函数可以计算协方差矩阵。
此外,还有一些其他的统计函数,如median、mode和var等。
MATLAB命令大全
MATLAB命令大全--> 常用命令管理命令和函数addpath :添加目录到MATLAB搜索路径 doc :在Web浏览器上现实HTML文档help :显示Matlab命令和M文件的在线帮助 helpwin ,helpdesk :help lookfor :在基于Matlab搜索路径的所有M文件中搜索关键字partialpath:部分路径名path :所有关于路径名的处理pathtool :一个不错的窗口路径处理界面 rmpath :删除搜索路径中指定目录type :显示指定文件的内容ver :版本信息version :版本号web :打开web页what :列出当前目录吓所有的M文件 Mat文件和 Mex文件whatsnew :显示readme文件which :显示文件位置常用命令-->管理变量和工作区(输入输出、内存管理等) clear :从内存中删除disp :显示文本或数组内容length :数组长度(最长维数)load :重新载入变量(从磁盘上)mlock :锁定文件,防止文件被错误删除 munlock :解锁文件openvar :在数组编辑器中打开变量pack :整理内存空间save :保存变量到文件 8*)size :数组维数whowhos :列出内存变量workspace :显示工作空间窗口常用命令-->管理命令控制窗口(command窗口) clc :清空命令窗口echo :禁止或允许显示执行过程format :设置输出显示格式home :光标移动到命令窗口左上角more :设置命令窗口页输出格式说明:这一部分命令结合‘判断目录是否为空的’命令,可以完成一部分非常实用的操作,,,对文件系统进行管理。
cd :改变工作目录copyfile :复制文件delete :删除文件和图形对象diary :把命令窗口的人机交互保存到文件 dir :显示目录edit :编辑文本文件fileparts :返回文件的各个部分fullfile :使用指定部分建立文件全名 inmem :返回内存(伪代码区)的matlab 函数名 ls :在unix系统中列出目录(win中亦可) matlabroot :根目录mkdir :新建目录open :打开文件pwd :显示当前目录tempdir :返回系统临时目录的名字 tempname :随机给出一个临时字符串 ! :直接调用操作系统command命令常用命令-->启动和退出Matlabmatlabrc :Matlab的启动M文件 exit ,quit :退出Matlabstartup :运行matlab启动文件语言结构和调试命令-->程序设计builtin :从可重载方法中调用内置函数 eval :执行包含可执行表达式的字符串 evalc :计算并返回表达式的值evalin :执行某个工作空间中的包含表达式的字符串 feval :执行函数(从函数名或函数句柄) function :函数头global :定义全局变量nargchk :检查输入参数数目persistent :定义常量script :作为脚本的M文件语言结构和调试命令-->流程控制break :停止执行循环case :case语句,switch语句一部分switch switch_exprcase case_exprstatmentscaseotherwiseendcatch :try-catch语句一部分,捕捉程序 else :if条件语句一部分elseif :if条件语句一部分end :终止for、while、switch、try和if语句error :显示错误信息for :循环语句一(确定次数) if :if条件语句other :switch语句一部分 return :返回到调用函数switch :开关语句try :try程序块warning :类似于disp,但可被禁止 while :循环语句(次数不确定) 语言结构和调试命令-->交互输入 input :交互输入keyboard :在M文件中遇到keyboard时将在命令窗口产生交互直到输入return命令menu :为用户输入产生一个选择菜单 pause :暂停语言结构和调试命令-->面向对象编程 class :创建一个对象或者返回一个对象类 double :转换为双精度inferiorto :亚类关系inline :创建一个内联函数int8,int16,int32 :转换到符号整数 isa :检查是否为所给类的对象loadobj :load函数用户定义扩展 saveobj :save函数用户定义扩展 single :转换为单精度superiorto :超类关系uint8,uint16,uint32: 转换到无符号整数语言结构和调试命令-->程序调试 dbclear :断点清除dbcont :重新开始执行dbdown :改变当前工作空间 dbmex :调试Mex文件dbquit :退出调试模式dbstack :显示函数调用堆栈 dbstatus :列出所有断点dbstep :从断点处执行dbstop :设置断点dbtype :列出带行号的M文件内容 dbup :改变当前工作空间语言结构和调试命令-->lasterr,lastwarnlasterr :返回Matlab中产生的最后一个异常信息。
matlab等高线图
matlab等⾼线图利⽤三列数据,创建矩阵,以绘制等⾼线图。
只适⽤于对齐的数据,否则需要插值。
函数:function colplot(data,nums,p,leg)%data:待绘图的数据,每列⼀个变量%nums:绘图所⽤数据所在列1×3,依次为颜⾊、横坐标、纵坐标%p:绘制类型%legfun:图例ux=unique(data(:,nums(2)));uy=unique(data(:,nums(3)));if size(data,1)~=length(ux)*length(uy)warning('数据部分缺失,图像部分空⽩。
');end[X, Y] = meshgrid(ux,uy);%考虑到原数据的顺序问题,这⾥并没有直接转换,速度稍慢Z = nan(size(X));for i=1:size(X,1)for j=1:size(X,2)tryZ(i,j)=data(data(:,nums(2))==X(i,j) & ...data(:,nums(3))==Y(i,j),nums(1));catchcontinueendendendif p=='c'contourf(X, Y, Z);elseif p=='p'pcolor(X, Y, Z);elseif p=='i'pcolor(X, Y, Z);shading interp;endc = colorbar;bel.String = leg;end测试:n=10;a=1:n;x=repmat(a,1,n);y=repelem(a,1,n);z=x./(y+1);data=[x',y',z'];colplot(data,[3,1,2],'i','z');xlabel('x');ylabel('y');colplot(data,[3,1,2],'c','z');xlabel('x');ylabel('y');如有部分数据缺失,将在图像上留⽩:colplot(data(1:85,:),[3,1,2],'c','z'); xlabel('x');ylabel('y');colplot(data(1:85,:),[3,1,2],'i','z'); xlabel('x');ylabel('y');。
matlab画等高线图(z=f(x,y))
matlab画等⾼线图(z=f(x,y))步骤:1、产⽣独⽴变量,为带有两个变量 x 和 y 的集合,meshgrid是⼀个可以建⽴独⽴变量的函数,产⽣矩阵元素,元素x和y按照指定的范围和增量来产⽣。
2、输⼊要使⽤的函数;3、调⽤contour(x,y,z)命令。
例如为z = x2+y2作等⾼线图:[x,y] = meshgrid(-5:0.1:5, -3:0.1:3);z = x.^2 + y.^2;contour(x,y,z);但应该为其添加更多引⽤标签信息,可以使⽤set命令来实现:[C,h] = contour(x,y,z);set(h, 'ShowText', 'on', 'TextStep', get(h,'LevelStep')*2);例如为z = cos(x)*sin(y)作等⾼线图:z = cos(x).*sin(y);[C,h] = contour(x,y,z);set(h, 'ShowText','on','TextStep',get(h,'LevelStep')*2);我们还可以调⽤contour3命令把等⾼线画成三维的,如果调⽤contour3(z,n),那么将产⽣有n个级别的等⾼线,例如接着上⾯的函数继续调⽤ contour3(z,10); 可产⽣更复杂的三维图像。
例如为z = ye-(x2+y2)作等⾼线图,-2≤x,y≤2:[x,y] = meshgrid(-2:0.1:2);z = y.*exp(-x.^2-y.^2);contour(x,y,z),xlabel('x'),ylabel('y');下⾯要产⽣三维等⾼线图,可输⼊contour3(x,y,z,30);也可以添加surface命令,将图像装饰漂亮点:surface(x,y,z,'EdgeColor',[.8,.8,.8],'FaceColor','none'), grid off, view(-15,20)最终可产⽣如下图像:。
matlab设置等高线
contour命令显示矩阵Z的等高线,clabel命令可以标注等高线。
contour(Z)画出矩阵Z的等高线图,这里Z是相对于x-y平面的高度,至少是一个2×2矩阵。
等高线的层数和层值自动选择;contour(Z,n):画出矩阵Z的n层等高线图;contour(Z,v):在向量v指定的数值处画出Z的等高线图,层数等于length(v);contour(X,Y,Z),contour(X,Y,Z,n),contour(X,Y,Z,v):和上面类似,X和Y确定x轴和y轴的范围,如果是矩阵,则必须和Z有相同的阶数;contour(…,LineSpec):等高线使用的线型和颜色指定。
===============================================================================contour(u,v,z,n)是画等值线,其第四个参数是控制等值线的值的如果n是一个标量,那么解释为等值线的条数例如contour(u,v,z,20)那么它会根据数据的范围画出20条等值线如果n是一个向量,那么解释为需要等值线的值,例如contour(u,v,z,[1 2 3 4])会画出z=1,2,3,4四个值的等值线如果我们要只要画指定的某个值的等值线,我们就用两个相同的数组成向量contour(u,v,z,[1 1]);画值为1的等值线contour(u,v,z,[0 0]);画值为0的等值线==============================================================================%如果要指定等高线条数contour(x,y,z,10)%画10条等高线%如果要显示等高线的值[c,h]=contour(x,y,z);set(h,'ShowText','on')%显示等高线的值%如果要指定等高线的值[c,h]=contour(x,y,z);set(h,'ShowText','on','LevelList',[-.7 -.5 -.3 0 .5 1 2 4 7])%设定等高线的值。
matlab绘图注释命令
转matlab绘图注释命令编程,绘图,设置坐标轴,做出自己的坐标轴1. axis([xmin xmax ymin ymax])设置当前图形的坐标范围,分别为x轴的最小、最大值,y轴的最小最大值2. V=axis返回包含当前坐标范围的一个行向量3. axis auto将坐标轴刻度恢复为自动的默认设置4. axis manual冻结坐标轴刻度,此时如果hold被设定为on,那么后边的图形将使用与前面相同的坐标轴刻度范围5. axis tight将坐标范围设定为被绘制的数据范围6. axis fill这是坐标范围和屏幕的高宽比,使得坐标轴可以包含整个绘制的区域。
该选项只有在PlotBoxaApectRatio或DataAspectRatioMode被设置为‘manual’模式才有效7. axis ij将坐标轴设置为矩阵模式。
此时水平坐标轴从左到有取值,垂直坐标从上到下8. axis xy将坐标设置为笛卡尔模式。
此时水平坐标从左到右取值,垂直坐标从下到上取值9. axis equal设置屏幕高宽比,使得每个坐标轴的具有均匀的刻度间隔10. axis square将坐标轴设置为正方形11. axis normal将当前的坐标轴框恢复为全尺寸,并将单位刻度的所有限制取消12. axis vis3d冻结屏幕高宽比,使得一个三维对象的旋转不会改变坐标轴的刻度显示13. axis off关闭所有的坐标轴标签、刻度、背景14. axis on打开所有的坐标轴标签、刻度、背景本章主要内容:4.1 二维图形4.2 三维图形4.3 图形处理的基本技术4.4 图形处理的高级技术4.5 图形窗口4.1 二维图形二维图形的绘制是MATLAB图形处理的基础,在数值计算的过程中,用户可通过MATLAB函数将计算结果图形化,以实现对结果数据的深层次理解。
4.1.1 基本绘图指令绘制函数——plot函数函数能够将向量或者矩阵中的数据绘制在图形窗体中,并且可以指定不同的线型和色彩基本格式绘制一条曲线plot(xdata,ydata,’color_linestyle_marker’)绘制多条曲线plot(xdata1,ydata1,’clm1’,xdata2,ydata2,’clm2’,……)设置曲线线型、颜色以及标识的控制符Plot绘图相关命令4.1.2 二维特殊函数图4.2 三维图形4.2.1 基本绘图命令plot3、网图函数、着色图1.plot32.网图函数特殊的三维图形函数4.3 图形处理的基本技术图形控制、图形标注、图形保持、子图的绘制4.3.1图形控制1.坐标轴控制axis2.坐标轴缩放zoomZoom的控制符:当zoom处于on时,可通过鼠标进行图形缩放3. 图形的标注(1) 坐标轴标注:title为图形添加标题、xlablel,ylabel为坐标轴添加标注标注时指数或分母应放在大括号内{}(2)文本标注Text(x,y,’标注文本及控制字符串’)(3)交互文本标注gtext:用户可通过鼠标来选择文本输入点(4)图例标注legend4.图形保持与子图(1)图形保持Hold on 启动图形保持Hold off 关闭图形保持Hold 切换(2)子图Subplot(m,n,p)分割图形窗口成m*n个子绘图区,并从左至右编号注:对一个子图进行图形设置不影响其它子图4.4 图形处理的高级技术1. 颜色映像:默认状态为64*3的颜色矩阵,每个颜色映像均描述了64种颜色的RGB 属性。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
MATLAB--三维图形等高线
命令1contour
功能曲面的等高线图
用法contour(z)把矩阵z中的值作为一个二维函数的值,等高曲线是一个平面的曲线,平面的高度v是Matlab自动取的;
contour(x,y,z)(x,y)是平面z=0上点的坐标矩阵,z为相应点的高度值矩阵。
效果同上;
contour(z,n)画出n条等高线;
contour(x,y,z,n)画出n条等高线;
contour(z,v)在指定的高度v上画出等高线;
contour(x,y,z,v)同上;
[c,h]=contour(…)返回如同contourc命令描述的
等高矩阵c和线句柄或块句柄列向量h,这些可作为clabel命令的输入参量,每条线对应一个句柄,句柄中的userdata属性包含每条等高线的高度值;
contour(…,’linespec’)因为等高线是以当前的色图中的颜色画的,且是作为块对象处理的,即等高线是一般的线条,我们可象画普通线条一样,可以指定等高线的颜色或者线形。
例7-26
>>contour(peaks(40))
图形结果为图7-26。
命令2clabel
功能在二维等高线图中添加高度标签。
在下列形式中,若有h出现,则会对标签进行恰当的旋转,否则标签会竖直放置,且在恰当的位置显示个一个“+”号。
用法clabel(C,h)把标签旋转到恰当的角度,再插入到等高线中。
只有等高线之间有足够的空间时才加入,当然这决定于等高线的尺度。
clabel(C,h,v)在指定的高度v上显示标签h,当然要对标签做恰当的处理。
clabel(C,h,'manual')手动设置标签。
用户用鼠标左键或空格键在最接近指定的位置上放置标签,用键盘上的回车键结束该操作。
当然会对标签做恰当的处理。
clabel(C)在从命令contour生成的等高线结构c的位置上添加标签。
此时标签的放置的位置是随机的。
clabel(C,v)在给定的位置v上显示标签
clabel(C,'manual')允许用户通过鼠标来给等高线贴标签
例7-27
>>[x,y]=meshgrid(-2:.2:2);
>>z=x.*y.*exp(-x.^2-y.^2);
>>[C,h]=contour(x,y,z);
>>clabel(C,h);
图形结果为图7-27。
命令3contourc
功能低级等高线图形计算命令。
该命令计算等高线矩阵c,该矩阵可用于命令contour,contour3和contourf等。
矩阵z中的数值确定平面上的等高线高度值,等高线的计算结果用由矩阵z维数决定的间隔的宽度。
用法C=contourc(Z)从矩阵z中计算等高矩阵,其中z的维数至少为2*2阶,等高线为矩阵z中数值相等的单元。
等高线的数目和相应的高度值是自动选择的。
C=contourc(Z,n)在矩阵z中计算出n个高度的等高线。
C=contourc(Z,v)在矩阵z中计算出给定高度向量v上计算等高线,当然向量v的维数决定了等高线的数目。
若只要计算一条高度为a的等高线,输入:contourc(Z,[a,a]);
C=contourc(x,y,Z)在矩阵z中,参量x,y确定的坐标轴范围内计算等高线;
C=contourc(x,y,Z,n)从矩阵Z中,参量x与y确定的坐标范围内画出n条等高线;
C=contourc(x,y,Z,v)从矩阵Z中,参量x与y确定的坐标范围内,画在v
指定的高度上指定的等高线。
命令4contour3
功能三维空间等高线图。
该命令生成一个定义在矩形格栅上曲面的三维等高线图。
用法contour3(Z)画出三维空间角度观看矩阵z的等高线图,其中z的元素被认为是距离xy平面的高度,矩阵z至少为2*2阶的。
等高线的条数与高度是自动选择的。
若[m,n]=size(z),则x轴的范围为[1:n],y轴的范围为[1:m]。
contour3(Z,n)画出由矩阵z确定的n条等高线的三维图。
contour3(Z,v)在参量v指定的高度上画出三维等高线,当然等高线条数与向量v的维数相同;若想只画一条高度为h的等高线,输入:contour3(Z,[h,h])
contour3(X,Y,Z)、contour3(X,Y,Z,n)、contour3(X,Y,Z,v)用X与Y定义x-轴与y-轴的范围。
若X为矩阵,则X(1,:)定义x-轴的范围;若Y为矩阵,则Y(:,1)定义y-轴的范围;若X与Y同时为矩阵,则它们必须同型。
不论为哪种使用形式,所起的作用与命令surf相同。
若X或Y有不规则的间距,contour3还是使用规则的间距计算等高线,然后将数据转变给X或Y。
contour3(…,LineSpec)用参量LineSpec指定的线型与颜色画等高线。
[C,h]=contour3(…)画出图形,同时返回与命令contourc中相同的等高线矩阵C,包含所有图形对象的句柄向量h;除非没有指定LineSpec参数,contour3将生成patch图形对象,且当前的colormap属性与caxis属性将控制颜色的显示。
不论使用何种形式,该命令都生成line图形对象。
例7-28
>>[X,Y]=meshgrid([-2:.25:2]);
>>Z=X.*exp(-X.^2-Y.^2);
>>contour3(X,Y,Z,30)
图形结果为图7-28。
命令5contourf
功能填充二维等高线图。
即先画出不同等高线,然后相邻的等高线之间用同一颜色进行填充。
填充用的颜色决定于当前的色图颜色。
用法contourf(Z)矩阵z的等高线图,其中z理解成距平面的高度。
Z至少为2*2阶的。
等高线的条数与高度是自动选择的。
contourf(Z,n)画出矩阵z的n条高度不同的等高线。
contourf(Z,v)画出矩阵z的、由v指定的高度的等高线图。
contourf(X,Y,Z)、contourf(X,Y,Z,n)、contourf(X,Y,Z,v)画出矩阵z的等高线图,其中X与Y用于指定x-轴与y-轴的范围。
若X与Y为矩阵,则必须与Z 同型。
若X或Y有不规则的间距,contour3还是使用规则的间距计算等高线,然后将数据转变给X或Y。
[C,h,CF]=contourf(…)画出图形,同时返回与命令
contourc中相同的等高线矩阵C,C也可被命令clabel使用;返回包含patch 图形对象的句柄向量h;返回一用于填充用的矩阵CF。
例7-29
>>contourf(peaks(30),20);
>>colormap gray
图形结果为图7-29。
命令6pie3
功能三维饼形图
用法pie3(X)用x中的数据画一个三维饼形图。
X中的每一个元素代表三维饼形图中的一部分。
pie3(X,explode)x中的某一部分可以从三维饼形图中分离出来。
explode是一个与x同型的向量或矩阵,explode中非零的元素对应x中从饼形图中分离出来的分量。
h=pie3(…)返回一个分量为patch,surface和text图形句柄对象的向量。
即每一块对应一个句柄。
注意:命令pie3将x的每一个元素在所有元素的总和中所占的比例表达出来。
若x中的分量和小于1(则所有元素小于1),则认为x中的值指明三维饼形图的每一部分的大小。
例7-30
>>x=[130.52.52]
>>ex=[01000]
>>pie3(x,ex)
图形结果为图7-30。