I think you found a different way to get the data than we suggest.
We use:
VL53LX_Error VL53LX_GetAdditionalData(VL53LX_DEV Dev,
VL53LX_AdditionalData_t *pAdditionalData)
This function will return the histogram data.
But there is a trick. The data is formatted for the hardware and not for you.
Under the covers there are 2 ranges (an 'a' and a 'b' range)
The first 2 'bins' of the arrays are NOT histogram data.
And the next 4 bins of the 'a' array are ambient data - not histogram data.
So if you use VL53LX_GetAdditionalData and plot starting at bin 6 of the odd ranges and bin 2 of the even ranges you will do better.
The A ranges have 20 valid bins, the B ranges have 24 valid ones.
The other minor point in your experiment is the sensor sends out a cone of light such that the diameter of the circle of illumination is 1/2 the distance.
This is a long way of saying that your table is in play if you mount your sensor that low.