aranja/rakning-c19-app

[Idea] Statistics & Viewer

pjanaya opened this issue · 9 comments

After the fixes to #33, the app consumes so little battery now that is making me suspicious if it's actually working. Since we are not sending the location data unless it's requested, there is no real way for the user to know how good the app is working. For example, I know cases of people enabling the Google History service, only to realize after a few weeks that there was a problem and it only detected 2-3 points a day. This would be a really small amount of points to serve the main purpose of this app.

This could be achieved with something as simple as a Statistics Screen (total points, points per day, etc.). However, it could go as far as building a Point Viewer to see on a map all your points.

I think something like this would help to highlight issues as soon as possible. I wouldn't like to end up on a scenario with a second infection wave only to find out that half of the users weren't collecting the needed amount of points because of some issue we didn't detect on time.

I like the idea. Our data collection is quite limited by outside factors, so I wouldn't want to stress people too much, at least with a map view. But maybe it would be useful if the user could see a day graph of how many locations were detected by day for the last 14 days.

Not sure if we should spend time on this though, since it has yet to bee decided if the future of the project is Geolocation, BLE, or a combination of both.

But maybe it would be useful if the user could see a day graph of how many locations were detected by day for the last 14 days.

Yes, I was thinking about something like this:

Oh wow, you're on 🔥 This looks real good.

Should the screen name be "Data statistics"?

Are you using a graph library? If it's easy to configure, I'd like it to be in one row, with tighter columns. Since it's only 14 days, the X-axis can have "Today" on the right side and the oldest date on the left side. Y-axis would have numbered ticks (preferably with smart rounding). Each column does not need to show a precise number (unless it's easy to add a tooltip on tap).

The graphs on covid.is look real good on mobile. Would probably use the blue color for the columns.

I've been playing around with this graph library. Although it does offer some customization options, it's very very basic. I can somewhat change the width of the columns, but for so many it's adding too much margin in between and I'm not convinced. They are also using the same font color for the background lines, and for the color of the columns. It looks really really ugly. There are also some margin issues I'm not sure if they have some customization for.
Can you recommend a graph library for this? I guess I could always go ahead and make whatever changes we need to this library and make a PR to them, but it could be hard. Would you consider using a fork of this graph library where we don't have to worry about backwards compatibility? That would make things easier.

Well, I have some things to polish still, but I have a working prototype. I've used the react-native-svg library to create a graph completely customized for us, partly based in the implementation from react-native-chart-kit. There is an issue right now and it's that the graph is actually cropped on the top. It's too late now, but I could probably take a look at it tomorrow.

Do you think something like this would fly?

I've been working on this a little bit more. I have two versions:

With horizontal labels:
Screen Shot 2020-05-03 at 22 36 50

Without horizontal labels:
Screen Shot 2020-05-03 at 22 38 03

I don't really see any benefit for the user to have the labels on the y-axis divisions, but it's not up to me to decide. Anyway, if we do this screen, it feels a bit empty. Is there something else we could include? Any other stats you can think of? Also, I guess we need a "back" button, right?

So, anyway, I've done this prototype, now you know how it would look like and the potential of this idea. I won't do anything more and wait for further feedback and instructions.

Sorry about the radio silence, we've been quite busy with other projects.

Thank you so much for the deep dive into this feature. I really like your prototype.

  • Yes, we need a "back" button... not sure where though.
  • Regarding labels on the Y axis, I actually didn't expect there to be room for labels on each bar. Maybe it's just an issue on smaller displays. Are there still 320vp displays out there?
  • For polish, I'd expect the Y-axis to start at 0, and have more rounded ticks even if it means going beyond the largest bar.

However, we should not spend more time on this until we have a decision on the future of this project. Apparently Google/Apple will not allow their BLE solution to be used in conjunction with geolocation collection.

Thanks for the feedback. Got it, I won’t do anything extra for now.

Anyway, I’m glad I could help! In case we don’t talk again, good luck and thanks for putting so much effort in this project 👍