在matlab中绘制一个简单函数

在matlab中绘制一个简单函数,matlab,Matlab,我正在试着画函数图 f:[-10,10] -> R f(x) = 2*x+8, x<=2 f(x) = 3*x*x, x>2 f:[-10,10]>R f(x)=2*x+8,x2 我的代码: function [] = func3() X = linspace(-10,10,100); if (X<=2) Y=2.*X+8; plot(X,Y); else

我正在试着画函数图

f:[-10,10] -> R
f(x) = 2*x+8, x<=2
f(x) = 3*x*x, x>2
f:[-10,10]>R
f(x)=2*x+8,x2
我的代码:

    function [] = func3()
    X = linspace(-10,10,100);
        if (X<=2)
            Y=2.*X+8;
            plot(X,Y);
        else
            Y=3.*X.*X;
            plot(X,Y);
        end
end
function[]=func3()
X=linspace(-10,10100);
if(X分支仅在其向量参数包含除零以外的所有条目时才被输入。因此,在您的情况下,它从未被输入,并且只执行
else
部分。该部分使用向量
X
的所有值,并对其应用二次函数

要执行所需操作,请将
if
替换为:

X=linspace(-10,10100);
ind=X
X = linspace(-10,10,100);
ind = X<=2;
Y(ind) = 2*X(ind)+8; %// apply affine part of function only to these values of X
Y(~ind) = 3*X(~ind).^2; %// apply quadratic part of function to the remaining values
plot(X,Y);