1

我正在使用 Stata 绘制多个函数。在这种情况下,我正在绘制不同的 Gompertz 生存函数;一岁30一岁70

首先,考虑30-岁:

twoway function Age_30=exp(-exp(-3.520509+0.0762475*-34.13089)* ///
0.0378969^(-1)*(exp(0.0378969*x)-1)), range (0 50) xtitl(Years) title(Gompertz)

如您所知,比例参数有一个常数 ( -3.520509) 和年龄 ( 0.0762475),而形状有一个常数 ( 0.0378969)。

年龄以平均值为中心,这就是协变量为-34( 64 - 34 = 30) 的原因。

其次,考虑70-岁:

twoway function Age_70=exp(-exp(-3.520509+0.0762475*5.86911)* ///
0.0378969^(-1)*(exp(0.0378969*x)-1)), range(0 50) xtitle(Years) title(Gompertz)

两个函数单独绘制时都很好。

但是,当我绘制两者时,一条曲线没有完成:

twoway function Age_30=exp(-exp(-3.520509+0.0762475*-34.13089)* ///
0.0378969^(-1)*(exp(0.0378969*x)-1)) || function ///
Age_70=exp(-exp(-3.520509+0.0762475*5.86911)*0.0378969^(-1)* /// 
(exp(0.0378969*x)-1)), range(0 50) xtitle(Years) title(Gompertz)

你能帮助我吗?

4

1 回答 1

1

这是一个非常常见的问题,发生这种情况是因为 Stata 只range()为一个图设置而不是另一个。必须在所有图表中明确指定相同的内容:range()

twoway function Age_30 = exp(-exp(-3.520509+0.0762475 * -34.13089) * ///
                         0.0378969^(-1) * (exp(0.0378969 * x)-1)),  ///
                         range(0 50) || ///
       function Age_70 = exp(-exp(-3.520509+0.0762475*5.86911) * ///
                         0.0378969^(-1) * (exp(0.0378969 * x)-1)), ///
                         range(0 50) ///
                         xtitle(Years) title(Gompertz)

在此处输入图像描述

于 2018-12-09T10:11:14.333 回答