fplot函数

plot函数的缺点:在实际应用中,函数随着自变量的变化趋势是未知的,如果自变量的离散区间不合理,则无法反应函数的变化趋势。

fplot的作用:通过自适应算法,解决上述问题。

fplot函数格式:fplot(fname,lims,tol)

其中fname为函数名,以字符串形式出现,lims为变量取值范围,tol为相对允许误差,其其系统默认值为2e-3。

例如

fplot('sin(x)',[0  2*pi])

点这个之后会发现有一段warning

警告: 在以后的版本中,fplot 将不接受字符向量或字符串输入。请改用 fplot(@(x)sin(x))。

显然以后最好还是不要用字符串输入了但是现在可以

fplot('[sin(x),cos(x)]',[0  2*pi]) %同时绘制正弦、余弦曲线

为绘制f(x)=cos(tan(πx))曲线,可先建立函数文件fct.m,其内容为:

function  y=fct(x)
y=cos(tan(pi*x));

用fplot函数调用fct.m函数,其命令为:

fplot(’fct’,[0  1],1e-4)

特殊坐标图形

loglog(x,y) 双对数坐标

绘制y=|1000sin(4x)|+1的双对数坐标图。程序为:

x=[0:0.1:2*pi];
y=abs(1000*sin(4*x))+1;
loglog(x,y);

单对数坐标

以X轴为对数重新绘制上述曲线,程序为:

x=[0:0.01:2*pi]
y=abs(1000*sin(4*x))+1
semilogx(x,y); %单对数X轴绘图命令

同样,可以以Y轴为对数重新绘制上述曲线,程序为:

x=[0:0.01:2*pi]
y=abs(1000*sin(4*x))+1
semilogy(x,y); %单对数Y轴绘图命令

极坐标图

函数polar(theta,rho)用来绘制极坐标图,theta为极坐标角度,rho为极坐标半径

绘制sin(2θ)cos(2θ)的极坐标图,程序为:

theta=[0:0.01:2*pi];
rho=sin(2*theta).*cos(2*theta);
polar(theta,rho); 绘制极坐标图命令
title('polar plot');

其他函数图像

阶梯图形

函数stairs(x,y)可以绘制阶梯图形,如下列程序段:

x=[-2.5:0.25:2.5];
y=exp(-x.*x);
stairs(x,y); %绘制阶梯图形命令
title('stairs plot');

条形函数

函数bar(x,y)可以绘制条形图形,如下列程序段将绘制条形图形

x=[-2.5:0.25:2.5];
y=exp(-x.*x);
bar(x,y); %绘制条形图命令

三维函数

plot3函数

最基本的三维图形函数为plot3,它是将二维函数plot的有关功能扩展到三维空间,用来绘制三维图形。

函数格式:plot3(x1,y1,z1,c1,x2,y2,z2,c2,…)

其中x1,y1,z1…表示三维坐标向量,c1,c2…表示线形或颜色。

函数功能:以向量x,y,z为坐标,绘制三维曲线。

绘制三维螺旋曲线,其程序为:

t=0:pi/50:10*pi;
y1=sin(t),y2=cos(t);
plot3(y1,y2,t);
title('helix'),text(0,0,0,'origin');
xlabel('sin(t)'),ylabel('cos(t)'),zlabel('t');
grid;

mesh函数

mesh函数用于绘制三维网格图。在不需要绘制特别精细的三维曲面结构图时,可以通过绘制三维网格图来表示三维曲面。三维曲面的网格图最突出的优点是:它较好地解决了实验数据在三维空间的可视化问题。

函数格式:mesh(x,y,z,c)

其中x,y控制X和Y轴坐标,矩阵z是由(x,y)求得Z轴坐标,(x,y,z)组成了三维空间的网格点;c用于控制网格点颜色。

x=[0:0.15:2*pi];
y=[0:0.15:2*pi];
z=sin(y')*cos(x); %矩阵相乘
mesh(x,y,z);

suf函数

surf用于绘制三维曲面图,各线条之间的补面用颜色填充。surf函数和mesh函数的调用格式一致。

函数格式: surf (x,y,z)

其中x,y控制X和Y轴坐标,矩阵z是由x,y求得的曲面上Z轴坐标。

x=[0:0.15:2*pi];
y=[0:0.15:2*pi];
z=sin(y')*cos(x); %矩阵相乘
surf(x,y,z);

最新文章

  1. C# Dictionary和Dynamic类型
  2. 安装Win7或者XP系统用虚拟光驱加载Win7或者XP镜像 iso文件xp win7wim文件
  3. SqlSever基础 一个条件group by 一列有两个内容,分组并查看每个内容有多少行,并用as起名
  4. CSS选择器、优先级与匹配原理(转)
  5. 对于python的内存管理的好文章
  6. FindBugs Bug Descriptions
  7. Python(2.7.6) 特殊方法
  8. struts2的json-default和struts-default的区别
  9. js 中的流程控制-条件语句
  10. 【转】 Linux/Unix 进程间通信的各种方式及其比较
  11. C++关联容器综合应用:TextQuery小程序
  12. mediator pattern
  13. ios 添加PCH文件
  14. java 8 日期函数
  15. 【Ansible 文档】【译文】模版(Jinja2)
  16. 每天一个linux命令(3):ls命令
  17. [others]tinycore/microcore
  18. 在CentOS7中利用yum命令安装mysql
  19. OpenERP 7中 openerp-server.conf 的解释
  20. Java常量池的理解

热门文章

  1. 不吹不黑,跨平台框架AspNetCore开发实践杂谈
  2. logback日志打印sql
  3. 不停机不更新代码线上调试BUG的工具
  4. How to: Debug X++ Code Running in .NET Business Connector [AX 2012]
  5. linux磁盘已满,查看那个目录文件最占磁盘空间并解决没有内存不耗费资源删除
  6. 【SpringBoot】09.SpringBoot整合Freemarker
  7. yaf拓展安装步骤
  8. Ubuntu17.10 React Native 环境搭建
  9. c#连接mysql答题步骤
  10. 070_GUI编程