I was looking for different ways to do this, or maybe something better I regularly do here. Another way to make this is using error bars. You can add vertical and horizontal big error bars to go down to lower axis value and upper than higher axis value, so it fills the whole plot. With the error bars you can do both horizontal and vertical shading using color transparency. You can also set individual colors to individual data the same way you can change individual points colors.