在一张图上绘制多个函数

Plot multiple functions on one figure

我很难在一张图上绘制多个函数。

这是我的代码:

syms t a;
a=0.9514;
F1=0.5*sqrt(3*t^2);
F2=-0.28375*t^2+1.155*a*(t-a)+1;
F3=1;
E1=diff(F1,t);
E2=diff(F2,t);
E3=diff(F3,t);

我想绘制 E1、E2 和 E3,每一个都在一定范围内,形成一条 "composite" 线。

我试过用 ezplot 绘图,但只绘制了最后一个。 plotfplot 给出错误。

ezplot((3^(1/2)*t)/(2*(t^2)^(1/2)),[0,0.5*a])
hold on
ezplot((231*a)/200 - (231*t)/400,[0.5*a,2*a])
hold on
ezplot(0,[2*a,2.5*a])

(E3=0)

如何获得一次绘制所有函数?

2 件事:

1.- 您的代码的最后一行抛出错误。错了。

2.- 情节就在那里,只是你看不到而已。尝试添加 axis([0 1 0 1]) 来缩小!试着弄清楚你的极限是多少(肯定不是 0-1、0-1 ;))

我认为你错过了 x 限制。

xlim([0 2.5*a])

我建议使用一系列数字 t 而不是符号

a=0.9514;
t1 = linspace(0.,0.5*a,1000);
t2 = linspace(0.5*a,2*a,1000);
t3 = linspace(2*a,2.5*a,1000);

F1=0.5*sqrt(3*t1.^2);
F2=-0.28375*t2.^2+1.155*a*(t2-a)+1;
F3=ones(size(t3));
E1=diff(F1)./diff(t1);
E2=diff(F2)./diff(t2);
E3=diff(F3)./diff(t3);
plot(t1(1:end-1), E1)
hold all
plot(t2(1:end-1), E2)
plot(t3(1:end-1), E3)

给出以下内容,