Matlab:二维绘图篇——plot绘图命令(二)

目录

1.fplot命令

实例------绘制函数曲线

2.ezplot绘图命令

实例------绘制隐函数图形

3.两个命令的区别


1.fplot命令

fplot命令也是Matlab提供的一个画图命令,用于一个专门画一元函数图像的命令。有人会有些奇怪,不是有plot命令了么?那为什么还需要这个呢?简单来说,就是这个命令它所取的数据点相对稀疏一点,在函数变化明显处所取的数据点就会自动密一点,因此用fplot命令所作出的图像要比用plot命令做出的图像光滑准确。

|----------------------------------------|--------------------------------------------------|
| 调用格式 | 说明 |
| fplot(f,lim) | 在指定的lim范围内画出一元函数f的图形 |
| fplot(f,lim,s) | 在指定的线型范围画出一元函数f的图形 |
| fplot(f,lim,e) | 用相对误差值为e画出一元函数f的图形 |
| fplot(f,lim,s,e) | 用相对误差值为e和指定的线型s画出一元函数的图形 |
| fplot(f,lim,n) | 画出一元函数的图形时,至少描出n+1个点 |
| fplot(f,lim,...) | 允许可选参数e,n和s以任意组合方式输入 |
| X,Y=fplot(f,lim,...) | 返回横坐标与纵坐标的值给变量X和Y |
| ...=fplot(f,lim,s,e,n,s,P1,P2,...) | 允许用户直接给函数f输入参数P1,P2等,其中函数f的定义形式为y=f(x,P1,P2,...) |
[fplot命令的调用格式]

实例------绘制函数曲线

分别用fplot命令和plot命令做出函数y=sin1/x,x∈0.01,0.02的图像。

复制代码
>> x=linspace(0.01,0.02,50);
y=sin(1./x);
subplot(2,1,1),plot(x,y)
subplot(2,1,2),fplot(@(x)sin(1./x),[0.01,0.02])

这段MATLAB代码的核心目的是在同一窗口绘制函数y=sin1/x,x∈0.01,0.02 的图像,采用两种绘图方式并上下排列展示。**首先,**利用linspace函数生成该区间内50个等间距的点作为x 值,接着计算对应的 y 值。

其次 ,使用subplot函数将窗口分为2行1列的子图布局。在第一个子图中,调用plot函数,将离散的点连接起来绘制图像。而在第二个子图里,借助fplot函数,通过传入匿名函数@(x) sin(1./x)直接绘制该函数在指定区间的图像。由于函数在x趋近于0时振荡剧烈,fplot会自动调整采样点密度,相比plot绘制的图像通常更精确,而且可以按需调整绘图参数。

2.ezplot绘图命令

对于符号函数,matlab也提供了一个专门的绘图命令------ezplot命令。这个命令可以很容易地将一个符号函数图形化。

|---------------------------|---------------------------------------------------|
| 调用格式 | 说明 |
| ezplot(f) | 绘制函数f(x)在默认区间x∈(-2Π,2Π)上的图像 |
| ezplot(f,a,b) | 绘制函数f(x)在默认区间x∈(a,b)上的图像 |
| ezplot(f,xa,xb,ya,yb) | 对于隐函数f=(x,y),在区域x€(xa,xb),y€(ya,yb)上绘制f(x,y)=0的图像 |
| ezplot(x,y) | 在默认区间x∈(0,2Π)上绘制参数曲线x=x(t),y=y(t)的图像 |
| ezplot(x,y,a,b) | 在区间x∈(a,b)上绘制参数曲线x=x(t),y=y(t)的图像 |
| ezplot(...,figure]) | 在指定的图形窗口中绘制函数图像 |
[ezplot命令地调用格式]

实例------绘制隐函数图形

复制代码
>> syms x %定义了一个符号变量x,后续可以使用它来定义符号表达式
f1=exp(2*x)*sin(2*x);
subplot(2,2,1),ezplot(exp(2*x),[-pi,pi])
subplot(2,2,2),ezplot(sin(2*x))
subplot(2,2,3),ezplot(exp(2*x)+sin(2*x),[-pi,pi,0,2*pi])
subplot(2,2,4),ezplot(f1,[-4*pi,4*pi])

3.两个命令的区别

在 MATLAB 中,通过两个命令,我们知道fplot和ezplot都用于绘制函数图像,但存在明显区别。从可用性看 ,ezplot是早期用于绘制符号函数图像的工具,在新版本中已被建议用fplot替代,未来可能移除;而++fplot是推荐使用的函数,会持续更新优化。++

输入参数方面,ezplot依赖符号变量构建表达式绘图,fplot则更灵活,既支持符号表达式,也能处理匿名函数。绘图能力上 ,ezplot自动确定范围,处理复杂函数时可能无法精准展示特征,且不适合多函数或自定义样式;++fplot能精确控制范围,自动调整采样点密度,支持多函数绘制与样式设置。++

性能上 ,ezplot基于符号计算,处理复杂函数耗时耗资源;++fplot采用数值计算,绘图速度更快,优势明显。++

相关推荐
wshzd1 分钟前
LLM之Agent(104)|DeepSeek-Harness(十三)ReactLoopAgent 总览:kick → turn → step
开发语言·前端·javascript
共享家95276 分钟前
C语言-408
c语言·开发语言
I Am a robert girl13 分钟前
打破音频生态壁垒:用 WinAirCast 把 Windows 声音塞进 HomePod
windows·音视频·跨平台开发·音频串流·airplay 2·homepod
周杰偷奶茶13 分钟前
【Java】运算符指南
java·开发语言
2601_9669496523 分钟前
量化回测中分钟数据应该如何保存?从文件到数据仓库的工程化设计
开发语言·python·pandas·量化交易·股票数据·quantdash
Zhou14113637 分钟前
SpringMVC_02_注解开发实战
开发语言·windows·python
繁华的地方不一定留下你的脚印44 分钟前
C++ 算法与 ranges:用 find_if、transform 写清数据处理意图
开发语言·c++·算法
霸道流氓气质1 小时前
Mermaid 图表完全指南:从文本语法到LangGraph4j工作流可视化实战
开发语言·python
泡海椒1 小时前
JQuick-Excel 项目定位与适用场景:声明式 Java Excel 的边界
java·开发语言·excel
slandarer2 小时前
MATLAB | R2026b 更新了哪些有趣的新东西
开发语言·数据库·matlab