matlab中怎么把不同M函数中的图画在一起
不好意思哈,不知楼主M软件的水平到什么程度?怕班门弄斧呀!
其实你说的第一个问题情况还是比较复杂的,因为不同的函数值
有时数值差别会很大的,画在一起实在不好看的,当然画在一起是没有问题的
特别是你举的例子:sinx和cosx,因为值域相同,所以没什么问题
我的感觉是:第一,画在一起的图,尽量是同一个变量产生的函数值
第二,如果是不同变量产生的函数值,如果数值差别很大,要通过控制
坐标显示范围等办法,尽量使图有观赏性。
比如,你说的2个函数,画在一起:
clear all;clc;
x1=-2*pi:pi/10:-pi/2;
x2=pi/2:pi/10:2*pi;
y1=sin(x1);y2=cos(x2);
plot(x1,y1);grid on;hold on;
plot(x2,y2,'r');
第二个问题就复杂了,不同空间变量的传递方法很多,
有子函数的程序运行时,一般来说有基本空间、主函数空间和子函数空间
变量跨空间传递,大概有全局变量、控制输入输出宗量和专门的跨空间串表达式指令等几种方法
说起来比较复杂,我只举一个最最简单的例子来说明你的问题,函数是随便编的,可能不严谨。
主程序:
clear all;clc;
x=-2*pi:pi/20:2*pi;
y=fun11(x);
z=fun22(x,y);
plot(x,z);grid on;
--------------------------------
主函数:
function z=fun22(x,y)
z=sin(x)+cos(y);
----------------------------------
子函数:
function y=fun11(x)
y=x.^2+x-1;
---------------------------------
结果: