Plot scilab在同一图形上绘制函数和数据集

Plot scilab在同一图形上绘制函数和数据集,plot,scilab,Plot,Scilab,我试图用scilab在同一个图形上显示3条测量和理论曲线,以供比较。问题在于,虽然两条曲线的数据集大小相同,但理论曲线应该由具有更大数据集的函数生成,尽管两者的范围相同 D1和D2有13个要显示的值,D0 tiks中x轴的13个值应在0到500之间。 理论函数应该显示在0到500之间的linspace中,包含500个值,而不仅仅是13个值。使所有曲线与x轴上从o到500的TIK对齐 我尝试使用下面显示的代码,但它只显示D1和D2的曲线 我的代码: clc; clear; xdel(winsid(

我试图用scilab在同一个图形上显示3条测量和理论曲线,以供比较。问题在于,虽然两条曲线的数据集大小相同,但理论曲线应该由具有更大数据集的函数生成,尽管两者的范围相同

D1和D2有13个要显示的值,D0 tiks中x轴的13个值应在0到500之间。 理论函数应该显示在0到500之间的linspace中,包含500个值,而不仅仅是13个值。使所有曲线与x轴上从o到500的TIK对齐

我尝试使用下面显示的代码,但它只显示D1和D2的曲线

我的代码:

clc;
clear;
xdel(winsid());
    D0 = [0, 40, 80, 120, 160, 200, 240, 280, 320, 360, 400, 440, 480]; 
//x axis for D1 and D2
    D1 =[4.96, 5, 4.96, 4.96, 4.96, 4.96, 4.96, 4.96, 4.95, 4.96, 4.96, 4.96, 4.96];  //first curve
    D2 =[0, 1.61, 2.73, 3.58, 4.05, 4.24, 4.56, 4.72, 4.93, 4.88, 4.90, 4.90, 4.95];  //second curve
    foo1 = (-5)*(1-%e^((-1)/(0.1)*(linspace(0, 1, 500))));                            //the problematic function that will not show on the plot when the other curves are displayed
scf();
  aa = gca();
  aa.font_size=3;
  aa.thickness=2;
  plot(D0, D1, "r-", "fontsize",5);
  plot(D0, D2, "g-", "fontsize",5);
  plot(linspace(0, 1, 500), foo1);

我希望这3条曲线位于x轴为0到500的同一个图形上。

您在linspace函数中犯了一个错误,您应该使用类似于

   linspace(0, 500, 1000);

第一点、最后一点、值的数量。

脚本中未定义tmess\u A、UE\u A、UC\u A、y。抱歉,希望脚本易于阅读,但忘记了全部更改。现在变了。我很乐意提供任何帮助。您看不到第三条曲线,因为它是水平方向的:其横坐标在[0,1]中。请参见下面的答案。