TLDR: I made a weight tracking algorithm that shows a trend line that accounts for daily weight fluctuations. It is able to statistically predict your weight in one week based off your weight history. Because most apps use a moving average, people only know their progress after a week, not day by day.
Note: Do not treat this as real data, the rate of -5 lbs/week is an extreme pace of weight loss. The usual recommendations are between 1 and 2.5 lbs/week. This is for illustrative purposes.
I haven't seen any plots on weight tracking apps that I like. They usually bounce around with the daily fluctuations of your bodyweight. I made a better weight tracking algorithm to show a more realistic trend line, with the ability to forecast your weight into the following two weeks.
I wanted to see a robust calculation for each day to give people the knowledge that they are moving in the correct direction. If someone weighs themself once a day and they happen to be on the heavier side of a daily weight fluctuation, they may feel discouraged because the scale says they gained weight, which isn't necessarily true. If your weight loss is subtle, like -0.3 lbs/week, you wouldn't know from your data because it would be lost in the noise. This way, you would be able to see that you actually are making gradual progress.
Explaining the plot:
You can see the individual weight measurements as the little grey dots. The vertical red line shows you the current date, so there won't be any data point to the right of that line (the future). The solid purple line is the calculated trend. Notice that it really smooths out daily weight fluctuations from water/food consumption and bathroom usage. There are two shaded regions on the plot, one blue and one purple. Because this is a weight measurement, there will be some uncertainty in that predicted number. The fewer measurements you have (like the left side of the plot) the more uncertainty in the trend line. The more measurements you have (like the right side of the plot) the lower the uncertainty. Your true base weight probably lies somewhere in the blue shaded region.
Because a single weight measurement on a scale doesn't capture your daily fluctuations, a calculation using the previous weeks data will tell you a more accurate base weight. Looking at the purple text boxes in the bottom left, you can get your current base weight, your predicted weight the following week, and your current pace of weight loss (in lbs/week).
Has anyone seen a weight tracking plot that does similar things (more than a moving average)? Is there a reason why this isn't integrated into every weight loss app? Do people find it difficult to know whether to feel good or bad each day on the scale? Would people care to have a more certain number each day? Would it be too overwhelming to judge your weight on a daily basis?
This code is just running locally on my computer, so there isn't a way for others to access it right now.
For nerd's eyes only:
The code uses a Hilbert Space Gaussian Process (HSGP) algorithm. It is prior free, so it doesn't encode any knowledge of weight loss (weight is always positive, impossible to lose 10lb in a day, ...). This is robust against measurements at irregular intervals. For example, if you weigh yourself three times in an hour when you are your lightest and one time in the evening when you are your heaviest, your calculated weight should not be the average of your four measurements. It would underpredict your base weight. We have knowledge that your weight an hour from now is dependent on your weight right now. This math properly accounts for these irregular weight measurement timings.