咨询个matlab的问题 求助 我有一个函数f = 0.5*k*s.^2; s=linspace(0,10,50), k=lhsnorm(3,0.1,1000).

2025-06-21 05:51:34
推荐回答(1个)
回答1:

给出命令如下。

clc;clear
a=[2,5,10];
%a=[1,2,3,4,5,6,7,8,9,10];
col=repmat(['r','g','b','m'],1,length(a));
con=repmat(['-','--'],1,length(a));
shp=repmat(['*','o','p','^','.'],1,length(a));
x=linspace(-4,4,41);
Clegend=cell(length(a),1);
for i=1:length(a)
    Clegend{i,1}=['a=',num2str(a(i))];
    y=2./(1+exp(-x*a(i)))-1;
    plot(x,y,[col(i),con(i),shp(i)]);hold on
end
xlabel('s');ylabel('\sigma(s)','fontweight','bold')
text(-3,0.4,'$$y=\frac{2}{(1+e^{-ax})}-1$$','interpreter','latex','fontsize',12)
legend(Clegend)
box off;grid on

效果图