Graphing on Android was one of the hardest problem we had to conquer because the Android platform, similar to other platforms, does not have native libraries that support plots like it does for text and images, or tables. And it does not support Java's native graphing libraries that are available online. Furthermore, unlike iPhone and desktop applications, our graph has to occupy a variable amount of space to fit the different screen sizes supported by different devices.
Upon research, I found that there are several options:
- Buy a professionally designed library native for Android such as the aiChart. The problem with this is that all the libraries are very expensive, and we don't think it is necessary to spend that much money on those if it is possible for us to do it ourself.
- So there is only one option left: writing our own native graphing library for Android (we are not porting a Java graphing library because those do not offer as much flexibility as well).
Here is a prototype of our graph that shows the last ten days of one of our developers' sleep hours: