gnuplot生存函数

gnuplot生存函数,gnuplot,Gnuplot,是否可以使用gnuplot的“累积”指令绘制生存函数。 我所说的生存函数是指1-CDF。我们可以使用“累积”来绘制CDF,如下所示 plot 'datafile.dat' using <column with values>:(1./total number of values) smooth cumulative; 使用:(1/值的总数)平滑累积绘制“datafile.dat”; 我要做的就是把y轴乘以-1,然后用偏移量乘以1。i、 e plot 'datafile.dat'

是否可以使用gnuplot的“累积”指令绘制生存函数。 我所说的生存函数是指1-CDF。我们可以使用“累积”来绘制CDF,如下所示

plot 'datafile.dat' using <column with values>:(1./total number of values) smooth cumulative;
使用:(1/值的总数)平滑累积绘制“datafile.dat”;
我要做的就是把y轴乘以-1,然后用偏移量乘以1。i、 e

plot 'datafile.dat' using <column with values>:(1)-(1./total number of values) smooth cumulative;
使用:(1)-(1./值总数)平滑累积绘制“datafile.dat”;
但这不起作用,因为累加是最后一步。 有什么建议吗


谢谢。

我找到了解决此问题的方法:

  • 将聚合乘以-1
  • 重新标记y轴以隐藏实际标签:
  • i、 e

    设置ytics(“1”0,“0.75”-0.25,“0.5”-0.5,“0.25”-0.75,“0”-1)
    使用(-1./total number of value)平滑累积绘制“datafile.dat”;
    
    我不能100%确定您的意思,但我认为您想要使用的是gnuplot 4.4(?)中引入的内联函数。它的工作原理如下:

    cumm_sum=0.0
    nrec=0.0
    CDF(x)=(nrec=nrec+1, cumm_sum=cumm_sum+x, 1.-cumm_sum/nrec)
    plot 'datafile.dat' u (CDF($1)):2
    

    这有点让人困惑,你到底想在这里完成什么。我打赌你可以用内联函数实现,但我不是100%确定。(如果没有帮助的话,我很乐意删除我的答案)。
    cumm_sum=0.0
    nrec=0.0
    CDF(x)=(nrec=nrec+1, cumm_sum=cumm_sum+x, 1.-cumm_sum/nrec)
    plot 'datafile.dat' u (CDF($1)):2