matlab m 文件例子,MATLAB中M文件例子

disp([ ‘Unknown Property Name: ‘ Name’]) end end end end 精通MATLAB工具箱中的函数mmpaper以简单的方式阐述了对纸张属性的使用。如下所示,函数mmpaper设置当前图形的纸张属性,并将所有以后的图形设成缺省值。函数mmpage在下一章讨论,它是一个mmpaper友函数。mmpage建立一个图形用户界面,设定图形在打印页上的位置。

function mmpaper(arg1,arg2,arg3,arg4,arg5,arg6) %MMPAPER Set Default Paper Properties. % MMPAPER Name value...

% sets default paper properties for the current figure and succeeding figures based on Name % value pairs. % Properties: % NAME VALUE {default} % Units [{inches},centimeters,points,normal] % orient [{portrait},landscape] % type [{usletter},uslegal,a3,a4letter,a5,b4,tabloid] %

% Examples:

% MMPAPER Units inch orient landscape % MMPAPER type tabloid %

% MMPAPER with no arguments returns the current paper defaults. % Copyright (c) 1996 by Prentice-Hall,Inc.

Hf=mmgcf; flag=0;

if isempty(Hf) flag=1; Hf=figure( ‘Visible’ , ‘off ‘ ); end if nargin for i=1:2:max(nargin-1,1) Name=eval(sprintf( ‘arg%.0f ‘ ,i)0,[]); % get Name argument value=eval(sprintf( ‘arg%.0f ‘ ,i+1)0,[]); % get Name argument if Name(1)== ‘o’

set(0, ‘DefaultFigurePaperOrientation’ ,value) set(Hf, ‘PaperOrientation’ ,value) elseif Name(1)== ‘t’ set(0, ‘DefaultFigurePaperType’ ,value) set(Hf, ‘PaperType’ ,value) elseif Name(1)== ‘u’ set(0, ‘DefaultFigurePaperUnits’ ,value) set(Hf, ‘PaperUnits’ ,value) else disp([ ‘Unknown Property Name:’ Name]) ens end end 当把对象放在一个特定的位置时,有时在象素和归一化坐标之间进行转化是很有用的。在精通MATLAB工具箱中有两个函数进行这种转换。第一个是mmpx2n,它将象素转化为归一化坐标;第二个是mmn2px,它进行相反的转换。这些函数演示了如何以所需的一组单位获取 ‘Position’ 属性值。首先,把对象的当前 ‘Units’ 属性保存起来;然后,将 ‘Units’ 属性设成所需的值并获取所需的 ‘Position’ 属性值;最后,将 ‘Units’ 的值恢复为初始值。mmpx2n的M文件描述如下:

function Y=mmpx2n(X,Hf)

%MMPX2N Pixel to Normalized Coordinate Transformation.

% MMPX2N(X) converts the Position vector X from pixel coordinates to normalized % coordinates w.r.t.the computer screen. %

% MMPX2N converts the Position vector X from pixel coordinate to narmalized coordinates % w.r.t.the figure windoiw having handle H. %

% X=[left bottom width height] or X=[width height] % Copyright (c) 1996 by Prentice-Hall,Inc. msg= ‘Input is not a pixel Position vector.’ ; lx=length(X);

sz= ‘Position’ ;

if nargin==1,Hf=0;sz= ‘ScreenSize’ ;end if any(X<1)| (lx~=4&lx~=2) error(msg)

end if lx==2,X=[1 1 X(:)’ ];end % [width height] input format u=get(Hf, ‘Units’ ); % get Units set (Hf, ‘Units’ , ‘pixels’ ); % set Units to pixels s=get(Hf,sz); Y=(X-1)./([s(3:4)]-1); % convert set(Hf, ‘Units’ ,u); % reset Units if any(Y>1) error(msg) end if lx==2,Y=Y(3:4);end % [width height] output format 精通MATLAB工具箱中的两个函数mmcont2和mmcont3都用用户指定的颜色映象画等值线图。每一个函数分析输入参量并建立一个字符串,它包含了颜色的说明。一旦设置了字符串,就设置了当前坐标轴的 ‘ColorOrder’ 属性;最后,它们分别调用具有合适的参量的函数contour和contour3来画出图形。函数mmcont2的M文件描述如下:

function[cs,h]=mmcont2(arg1,arg2,arg3,arg4,arg5) %MMCONT2 2-D contour plot using a colormap.

% MMCONT2(X,Y,Z,N,C) plots N contours of Z in 2-D using the color % specified in C.C can be a linestyle and color as used in plot, % e.g., ‘r-’ ,orC can be the string Name of a colormap. X and Y % define the axis limits.

% If not given default argument values are: N=10,C= ‘hot’ , % X and Y =row and column indices of Z. Examples: % MMCONT2(Z) 10 lines with hot colormap % MMCONT2(Z,20) 20 lines with hot colormap % MMCONT2(Z, ‘copper’ ) 10 lines with copper colormap % MMCONT2(Z,20, ‘gray’ ) 20 lines with gray colormap % MMCONT2(X,Y,Z, ‘jet’ ) 10 lines with jet colormap % MMCONT2(Z, ‘c-’ ) 10 dashed lines in cyan % MMCONT2(X,Y,Z,25, ‘pink’ ) 25 lines in pink colormap %

% CS=MMCONT2(…) returns the contour matrix CS as described in % CONTOURC.

% [CS,H]=MMCONT2(…) returns a column vector H of handles to % line objects.

% Copyright (c) 1996 by Prentice-Hall,Inc. n=10;c= ‘hot’ ; % default values nargs=nargin;cflag=1;

if nargin<1,error( ‘Not enough input arguments.’ ), end for i=2:nargin % check input arguments for N and C argi=eval(sprintf( ‘arg%.0f ‘ ,i)); if ~isstr(argi)&length(argi)==1 % must be N, grab it n=argi; nargs=i; % # args to pass to contour2 elseif isstr(argi) % must be C if exist(argi)==2 % is colormap,so grab it c=argi; nargs=i-1; else % is single color/linestyle cflag=0; nargs=i; end end end

if cflag % a colormap has been chosen clf % clear figure view(2) % make it 2-D hold on % hold it mapstr=sprintf([c ‘(%.0f)’ ],n); set(gca,’ColorOrder’,eval(mapstr)); end

evalstr=‘[CS,H]=contour(’;

for i=1:nargs evalstr=[evalstr sprintf( ‘arg%.0f ‘ ,i) ‘,’ ]; end

lstr=length (evalstr); evalstr(lstr:lstr+1)= ‘);’ ; eval(evalstr) hold off

if nargout==1, cs=CS; elseif nargout==2, cs=CS;h=H; end

这里要讨论的最后一个精通MATLAB工具箱函数是mmtile。就象在二维函数那一章里所描述的一样,该函数在计算机屏幕上将4个已存在的图形按平铺模式排列起来。函数mmtile.m的内容如下所示:

function h=mmtile(n)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Matlab示例源码30个合集: MATLAB DCT水印源程序代码.rar MATLAB GUI实现动态画图曲线的源程序代码.rar MATLABcolorbar的设置 源程序代码.rar MATLAB的基本语法和语句示例代码.rar MATLAB使用欧拉Euler法求解微分方程组 源程序代码.rar MATLAB光通过三稜镜色散动画.rar MATLAB图像处理实现直线识别(拟合角平分线).rar MATLAB图像处理实现螺纹识别 源程序代码.rar MATLAB夜间车牌识别程序.rar MATLAB实现不同插值方法的GUI界面设计 源程序代码.rar MATLAB实现偏微分方程的差分计算 源程序代码.rar MATLAB实现图像去噪 滤波 锐化 边缘检测.rar MATLAB实现学生成绩查询系统 源代码程序.rar MATLAB实现灰度预测模型的源代码.rar MATLAB实现线性拟合和相关系数 源程序代码.rar MATLAB寻找素数的源程序代码.rar MATLAB建模 人口增长模型 源程序代码.rar MATLAB文字连通域源程序代码.rar Matlab时间序列-AR.7z MATLAB求解非线性方程组 fsolve源程序代码.rar MATLAB生成Gif图片程序源代码.rar MATLAB绘制 维维安尼Viviani曲线 源代码程序.rar MATLAB计算粒子速度分布 源程序代码.rar MATLAB设计的简单滤波器程序源代码.rar MATLAB霍夫曼Huffman编码译码GUI界面设计 源程序代码.rar 基于仿射变换的数字图象置乱技术 MATLAB源程序代码.rar 拉格朗日插值 MATLAB源程序代码.rar 牛顿Newton插值 MATLAB源程序代码.rar 经典-matlab经典算法的程序.7z 蒙特卡洛法求椭圆面积的MATLAB源程序代码.rar
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值