I need to plot baseline hazard functions for a piecewise constant model. The problem I find is that the hazard needs to be constant in each interval, and then have discrete changes between intervals, which I am not able to achieve.

The code I am using is the following:

streg e1 e2 e3 e4 log_trabalhadores innovator1 exporter1 i. ano i.region, dist(exp) nolog vce(cluster NPC_FIC) nocons

mat b = e(b)
mat list b
scalar n = colsof(b) - 1
scalar list n
mat b =b[1,2...n]
mat score xb = b

ge h=exp(_b[e1]) if age==1
replace h=exp(_b[e2]) if (age>1 & age<=4)
replace h=exp(_b[e3]) if (age>=5 & age<=6)
replace h=exp(_b[e4]) if age>=7



twoway(connect h age, sort )

However, when I do obtain the graph, the "jumps" in between the 4 different periods I have defined are not discrete. How can I make it so that they are? Am I doing something fundamentally wrong?