Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Idea] Statistics & Viewer #77

Open
pjanaya opened this issue Apr 30, 2020 · 9 comments
Open

[Idea] Statistics & Viewer #77

pjanaya opened this issue Apr 30, 2020 · 9 comments

Comments

@pjanaya
Copy link
Contributor

pjanaya commented Apr 30, 2020

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.

@eirikurn
Copy link
Member

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.

@pjanaya
Copy link
Contributor Author

pjanaya commented May 1, 2020

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:

@eirikurn
Copy link
Member

eirikurn commented May 1, 2020

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).

@eirikurn
Copy link
Member

eirikurn commented May 1, 2020

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

@pjanaya
Copy link
Contributor Author

pjanaya commented May 1, 2020

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.

@pjanaya
Copy link
Contributor Author

pjanaya commented May 2, 2020

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?

@pjanaya
Copy link
Contributor Author

pjanaya commented May 3, 2020

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.

@eirikurn
Copy link
Member

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.

@pjanaya
Copy link
Contributor Author

pjanaya commented May 11, 2020

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 👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants