import numpy as np
import matplotlib.pyplot as plt

k = -5
z_split = 4
sigma0 = 20
sigma1 = 0.5
center = -1.5

zgrid = np.arange(0.1, 6, 0.010)

sigma_beta_z = 1./(1+np.exp(-k*(zgrid - z_split)))*sigma0 
sigma_beta_z += sigma1

fig, ax = plt.subplots(1,1,figsize=(6,4))

ax.plot(zgrid, zgrid*0+center, color='k')
ax.fill_between(zgrid, center-sigma_beta_z, 
                 center+sigma_beta_z, color='k', alpha=0.1)

for k in [-2, -5, -8]:
    sigma_beta_z = 1./(1+np.exp(-k*(zgrid - z_split)))*sigma0 
    sigma_beta_z += sigma1

    ax.plot(zgrid, center+sigma_beta_z, label=f'k = {k}')

ax.legend()    
ax.grid()
ax.set_xlabel('redshift')
ax.set_ylabel('UV slope beta prior')
fig.tight_layout(pad=0.5)