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.
If this or any post solves your issue, please mark them as 'Accept as Solution' It really helps. And if you notice anything wrong do not hesitate to 'Report Inappropriate Content'. Someone will review it.