数学建模社区-数学中国
标题:
Matlab中fplot函数!
[打印本页]
作者:
残伤
时间:
2011-3-16 20:36
标题:
Matlab中fplot函数!
Matlab中fplot函数是怎么回事啊,求高手解释!
作者:
厚积薄发
时间:
2011-3-16 21:16
fplot函数
fplot
函数功能
在指定的范围内绘制函数图像
使用方法
fplot在指定的范围内绘制函数图像,函数必须是y=f(x)的形式,其中x是一个指定范围limits的向量,y是和x有相同大小的向量并包含在点x处的值。如果对一个给定的x值,函数返回多于一个值,则y是每列包含f(x)的每一个分量的矩阵。
fplot(fun,limits)
在指定的范围limits内画出函数名为fun的图像。其中limits是一个指定x轴范围的向量[xmin xmax]或者是x轴和y轴范围的向量[xmin xmax ymin ymax]。
fun可能为:
1、M文件函数名字。
2、可能传递给eval函数的带变量x的字符串,比如'sin(x)', 'diric(x,10)'或 '[sin(x),cos(x)]'。
3、M文件函数或匿名函数的函数句柄。
对于向量x的每个元素,函数f(x)必须返回一个行向量。比如,如果f(x)返回向量[f1(x),f2(x),f3(x)],输入参量为x=[x1;x2],则函数f(x)返回矩阵:
f1(x1) f2(x1) f3(x1)
f1(x2) f2(x2) f3(x2)
fplot(fun,limits,LineSpec)
用指定的线型LineSpec画出函数fun。
fplot(fun,limits,tol)
用相对误差值为tol画出函数fun。(默认相对误差为2e-3,0.2%de精度)
fplot(fun,limits,tol,LineSpec)
用指定的相对误差值为tol和指定的线型LineSpec画出函数fun。
fplot(fun,limits,n)
当n>=1时,则至少画出n+1个点,默认的n为1。最大步长不超过(1/n)*(xmax-xmin)。
fplot(fun,lims,...)
允许可选参数tol,n,和LineSpec以任意组合方式输入。
fplot(axes_handle,...)
用指定句柄axes_handle代替当前坐标轴句柄来画图。
[X,Y] = fplot(fun,limits,...)
返回横坐标与做坐标的值赋给X和Y,此时 fplot不给出图形,若想画出,可用命令plot(X,Y)。
应用举例
画[-2,2]区间的双曲正切函数:
fnch = @tanh;
fplot(fnch,[-2 2])
建一个M文件,myfun,函数返回一个两列的矩阵:
function Y = myfun(x)
Y(:,1) = 200*sin(x(:))./x(:);
Y(:,2) = x(:).^2;
创建一个myfun函数句柄:
fh = @myfun;
画带区间的图:
fplot(fh,[-20 20])
附加示例
通过函数句柄画图的例子,一个是MATLAB自带的函数,另一个是匿名函数:
hmp = @humps;
subplot(2,1,1);fplot(hmp,[0 1])
sn = @(x) sin(1./x);
subplot(2,1,2);fplot(sn,[.01 .1])
作者:
厚积薄发
时间:
2011-3-16 21:17
fplot函数
fplot
函数功能
在指定的范围内绘制函数图像
使用方法
fplot在指定的范围内绘制函数图像,函数必须是y=f(x)的形式,其中x是一个指定范围limits的向量,y是和x有相同大小的向量并包含在点x处的值。如果对一个给定的x值,函数返回多于一个值,则y是每列包含f(x)的每一个分量的矩阵。
fplot(fun,limits)
在指定的范围limits内画出函数名为fun的图像。其中limits是一个指定x轴范围的向量[xmin xmax]或者是x轴和y轴范围的向量[xmin xmax ymin ymax]。
fun可能为:
1、M文件函数名字。
2、可能传递给eval函数的带变量x的字符串,比如'sin(x)', 'diric(x,10)'或 '[sin(x),cos(x)]'。
3、M文件函数或匿名函数的函数句柄。
对于向量x的每个元素,函数f(x)必须返回一个行向量。比如,如果f(x)返回向量[f1(x),f2(x),f3(x)],输入参量为x=[x1;x2],则函数f(x)返回矩阵:
f1(x1) f2(x1) f3(x1)
f1(x2) f2(x2) f3(x2)
fplot(fun,limits,LineSpec)
用指定的线型LineSpec画出函数fun。
fplot(fun,limits,tol)
用相对误差值为tol画出函数fun。(默认相对误差为2e-3,0.2%de精度)
fplot(fun,limits,tol,LineSpec)
用指定的相对误差值为tol和指定的线型LineSpec画出函数fun。
fplot(fun,limits,n)
当n>=1时,则至少画出n+1个点,默认的n为1。最大步长不超过(1/n)*(xmax-xmin)。
fplot(fun,lims,...)
允许可选参数tol,n,和LineSpec以任意组合方式输入。
fplot(axes_handle,...)
用指定句柄axes_handle代替当前坐标轴句柄来画图。
[X,Y] = fplot(fun,limits,...)
返回横坐标与做坐标的值赋给X和Y,此时 fplot不给出图形,若想画出,可用命令plot(X,Y)。
应用举例
画[-2,2]区间的双曲正切函数:
fnch = @tanh;
fplot(fnch,[-2 2])
建一个M文件,myfun,函数返回一个两列的矩阵:
function Y = myfun(x)
Y(:,1) = 200*sin(x(:))./x(:);
Y(:,2) = x(:).^2;
创建一个myfun函数句柄:
fh = @myfun;
画带区间的图:
fplot(fh,[-20 20])
附加示例
通过函数句柄画图的例子,一个是MATLAB自带的函数,另一个是匿名函数:
hmp = @humps;
subplot(2,1,1);fplot(hmp,[0 1])
sn = @(x) sin(1./x);
subplot(2,1,2);fplot(sn,[.01 .1])
作者:
Sad___Loyal__
时间:
2011-3-16 23:39
看我照片。你认识我吗?
作者:
残伤
时间:
2011-3-17 15:56
回复
厚积薄发
的帖子
多谢,fplot和plot有什么不一样的吗?
作者:
吴潇漾
时间:
2011-3-26 16:21
回复
残伤
的帖子
不一样的,fplot是直接画出函数图像,而plot是先生成图像上的一系列点,再将这些点连起来。图像最终看起来差不多,但是若是plot函数点的间隔大的话就会看到出来。
作者:
残伤
时间:
2011-3-26 17:50
回复
吴潇漾
的帖子
谢谢!
欢迎光临 数学建模社区-数学中国 (http://www.madio.net/)
Powered by Discuz! X2.5