I’m loving these! They only seem to work in Chrome for me, but that’s stopping me wasting time looking at them all the time since that’s not my regular browser, so I think that’s probably good.
I think the default code is setup to expect the datapoints returned by Beeminder to be one point a day though? I have goals that add various datapoints through the day and would like to see the sum of everything on one day on the graph. At the moment I think each point on the graph overwrites any already set for that day?
My Javascript is very rusty so would anyone be able to whip up a map function that can take the datapoints and normalise them to a one per day sum format? Huge thanks to anyone who can!
Some (truncated) real data
datapoints = Array(1728) [
0: Object {timestamp: 1643113905, value: 1, comment: “Gained a point at 12:31pm on 01/25/2022: Yay, another point gained!”, id: “61efedb155c1330821d8e27c”, updated_at: 1643113905, requestid: null, canonical: “25 1 “Gained a point at 12:31pm on 01/25/2022: Yay, another point gained!””, fulltext: “2022-Jan-25 entered at 12:31 via ifttt”, origin: “ifttt”, daystamp: “20220125”}
1: Object {timestamp: 1643109248, value: 1, comment: "Gained a point at 11:14am on 01/25/2022: One point! Keep going. ", id: “61efdb803b53bf44acb67e13”, updated_at: 1643109248, requestid: null, canonical: "25 1 "Gained a point at 11:14am on 01/25/2022: One point! Keep going. “”, fulltext: “2022-Jan-25 entered at 11:14 via ifttt”, origin: “ifttt”, daystamp: “20220125”}
2: Object {timestamp: 1643045280, value: 1, comment: “Gained a point at 5:27pm on 01/24/2022: High five! And relax.”, id: “61eee1a03b53bf44acb67ab5”, updated_at: 1643045280, requestid: null, canonical: “24 1 “Gained a point at 5:27pm on 01/24/2022: High five! And relax.””, fulltext: “2022-Jan-24 entered at 17:28 via ifttt”, origin: “ifttt”, daystamp: “20220124”}
3: Object {timestamp: 1643040570, value: 1, comment: “Gained a point at 4:09pm on 01/24/2022: Fourth point of the day, well done!”, id: “61eecf3a3b53bf7d38ab7c49”, updated_at: 1643040570, requestid: null, canonical: “24 1 “Gained a point at 4:09pm on 01/24/2022: Fourth point of the day, well done!””, fulltext: “2022-Jan-24 entered at 16:09 via ifttt”, origin: “ifttt”, daystamp: “20220124”}
4: Object {timestamp: 1643032003, value: 1, comment: “Gained a point at 1:45pm on 01/24/2022: That’s a third point for today!”, id: “61eeadc33b53bf44acb67a23”, updated_at: 1643032003, requestid: null, canonical: “24 1 “Gained a point at 1:45pm on 01/24/2022: That’s a third point for today!””, fulltext: “2022-Jan-24 entered at 13:46 via ifttt”, origin: “ifttt”, daystamp: “20220124”}
5: Object {timestamp: 1643023853, value: 1, comment: “Gained a point at 11:30am on 01/24/2022: Yay, another point gained!”, id: “61ee8ded3b53bf441fb69d95”, updated_at: 1643023853, requestid: null, canonical: “24 1 “Gained a point at 11:30am on 01/24/2022: Yay, another point gained!””, fulltext: “2022-Jan-24 entered at 11:30 via ifttt”, origin: “ifttt”, daystamp: “20220124”}
6: Object {timestamp: 1643017778, value: 1, comment: "Gained a point at 9:48am on 01/24/2022: One point! Keep going. ", id: “61ee763255c1330821d8dabb”, updated_at: 1643017778, requestid: null, canonical: "24 1 "Gained a point at 9:48am on 01/24/2022: One point! Keep going. “”, fulltext: “2022-Jan-24 entered at 09:49 via ifttt”, origin: “ifttt”, daystamp: “20220124”}
7: Object {timestamp: 1642953141, value: 1, comment: "Gained a point at 3:51pm on 01/23/2022: One point! Keep going. ", id: “61ed79b53b53bf4506b66bdc”, updated_at: 1642953141, requestid: null, canonical: "23 1 "Gained a point at 3:51pm on 01/23/2022: One point! Keep going. “”, fulltext: “2022-Jan-23 entered at 15:52 via ifttt”, origin: “ifttt”, daystamp: “20220123”}
8: Object {timestamp: 1642878917, value: 1, comment: “Gained a point at 7:14pm on 01/22/2022: Yay, another point gained!”, id: “61ec57c555c1330821d8d08c”, updated_at: 1642878917, requestid: null, canonical: “22 1 “Gained a point at 7:14pm on 01/22/2022: Yay, another point gained!””, fulltext: “2022-Jan-22 entered at 19:15 via ifttt”, origin: “ifttt”, daystamp: “20220122”}
9: Object {timestamp: 1642874960, value: 1, comment: "Gained a point at 6:08pm on 01/22/2022: One point! Keep going. ", id: “61ec485055c1330821d8cfde”, updated_at: 1642874960, requestid: null, canonical: "22 1 "Gained a point at 6:08pm on 01/22/2022: One point! Keep going. “”, fulltext: “2022-Jan-22 entered at 18:09 via ifttt”, origin: “ifttt”, daystamp: “20220122”}
10: Object {timestamp: 1642790419, value: 1, comment: “Gained a point at 6:40pm on 01/21/2022: That’s a third point for today!”, id: “61eafe1355c1330821d8ca0b”, updated_at: 1642790419, requestid: null, canonical: “21 1 “Gained a point at 6:40pm on 01/21/2022: That’s a third point for today!””, fulltext: “2022-Jan-21 entered at 18:40 via ifttt”, origin: “ifttt”, daystamp: “20220121”}
11: Object {timestamp: 1642783226, value: 1, comment: “Gained a point at 4:40pm on 01/21/2022: Yay, another point gained!”, id: “61eae1fa3b53bf441fb6825a”, updated_at: 1642783226, requestid: null, canonical: “21 1 “Gained a point at 4:40pm on 01/21/2022: Yay, another point gained!””, fulltext: “2022-Jan-21 entered at 16:40 via ifttt”, origin: “ifttt”, daystamp: “20220121”}
12: Object {timestamp: 1642762032, value: 1, comment: "Gained a point at 10:46am on 01/21/2022: One point! Keep going. ", id: “61ea8f303b53bf4506b66965”, updated_at: 1642762032, requestid: null, canonical: "21 1 "Gained a point at 10:46am on 01/21/2022: One point! Keep going. “”, fulltext: “2022-Jan-21 entered at 10:47 via ifttt”, origin: “ifttt”, daystamp: “20220121”}
13: Object {timestamp: 1642690138, value: 1, comment: “Gained a point at 2:47pm on 01/20/2022: That’s a third point for today!”, id: “61e9765a55c1330821d8c267”, updated_at: 1642690138, requestid: null, canonical: “20 1 “Gained a point at 2:47pm on 01/20/2022: That’s a third point for today!””, fulltext: “2022-Jan-20 entered at 14:48 via ifttt”, origin: “ifttt”, daystamp: “20220120”}
14: Object {timestamp: 1642682389, value: 1, comment: “Gained a point at 12:38pm on 01/20/2022: Yay, another point gained!”, id: “61e9581555c13308cad8bd2d”, updated_at: 1642682389, requestid: null, canonical: “20 1 “Gained a point at 12:38pm on 01/20/2022: Yay, another point gained!””, fulltext: “2022-Jan-20 entered at 12:39 via ifttt”, origin: “ifttt”, daystamp: “20220120”}
15: Object {timestamp: 1642672816, value: 1, comment: "Gained a point at 9:59am on 01/20/2022: One point! Keep going. ", id: “61e932b055c1330821d8c17e”, updated_at: 1642672816, requestid: null, canonical: "20 1 "Gained a point at 9:59am on 01/20/2022: One point! Keep going. “”, fulltext: “2022-Jan-20 entered at 10:00 via ifttt”, origin: “ifttt”, daystamp: “20220120”}
16: Object {timestamp: 1642604725, value: 1, comment: “Gained a point at 3:05pm on 01/19/2022: Yay, another point gained!”, id: “61e828b555c1330935d8b750”, updated_at: 1642604725, requestid: null, canonical: “19 1 “Gained a point at 3:05pm on 01/19/2022: Yay, another point gained!””, fulltext: “2022-Jan-19 entered at 15:05 via ifttt”, origin: “ifttt”, daystamp: “20220119”}
17: Object {timestamp: 1642591781, value: 1, comment: "Gained a point at 11:28am on 01/19/2022: One point! Keep going. ", id: “61e7f6253b53bf441fb66caa”, updated_at: 1642591781, requestid: null, canonical: "19 1 "Gained a point at 11:28am on 01/19/2022: One point! Keep going. “”, fulltext: “2022-Jan-19 entered at 11:29 via ifttt”, origin: “ifttt”, daystamp: “20220119”}
]