MATLAB在变参数回路绘图中的应用

MATLAB在变参数回路绘图中的应用,matlab,Matlab,我想画这个 f(x)=3*(1-x)+7*x+8.314*T((1-x)*(lnx)+x*(lnx))+20*x(1-x) T从0到2000不等,间隔100{共有20个图形都在同一个} 给出一个涉及for循环和plot函数的非常基本的代码。 注:我是MATLAB的初学者欢迎来到MATLAB.)下面是我们如何在没有循环的情况下做到这一点: f=@(x,T) 3*(1-x)+7*x+8.314*T*((1-x).*log(x)+x.*log(x))+20*x.*(1-x); T=0:100:200

我想画这个

f(x)=3*(1-x)+7*x+8.314*T((1-x)*(lnx)+x*(lnx))+20*x(1-x)
T
0
2000
不等,间隔
100
{共有20个图形都在同一个}

给出一个涉及for循环和plot函数的非常基本的代码。 注:我是
MATLAB的初学者

欢迎来到MATLAB.)下面是我们如何在没有循环的情况下做到这一点:

f=@(x,T) 3*(1-x)+7*x+8.314*T*((1-x).*log(x)+x.*log(x))+20*x.*(1-x);
T=0:100:2000;
x=linspace(0,10,100);
for i=1:length(T)
    plot(x,f(x,T(i)));
    hold on;
end
% Define your function in terms of x and T
% Note that we use .* instead of * - this does a pairwise multiply
%  instead of a matrix or vector multiply
f = @(x,T) 3*(1-x)+7*x+8.314*T.*((1-x).*log(x)+x.*log(x))+20*x.*(1-x);

% Set your domain
x = linspace(0, 10, 101);
T = (0:100:2000);

% Compute your function for all values of x and T
tmp = bsxfun(f, x, T');

% Plot your output, all at the same time
plot(x, tmp)

你是说20分,而不是20张图表?