MPAndroidChart LineChart by default accepts Strings for X-axis. Is there a way to set the Date as a datatype for the X-axis?
The problem with just converting Date into strings is that the graph can be skewed depending on the data points. For example, if I have one data entry on January and 10 entries in June, by default the graph is just split into 11 and plot accordingly.
I want a "Your weight over time" graph, where X-Axis represents time. User weights in at random times, so some dates will have entry and some dates will not.
I found a thread on the project's gitHub ( https://github.com/PhilJay/MPAndroidChart/issues/12 ).
Apparently, this feature is not yet implemented.
Update
Doing a bit of search, I found this alternative library:
https://github.com/lecho/hellocharts-android
It supports values for x-axis.
UPDATE Since 2016, this feature has been included in MPAndroid. See https://github.com/PhilJay/MPAndroidChart/blob/master/MPChartExample/src/main/java/com/xxmassdeveloper/mpchartexample/LineChartTime.java for an exapmle in the docs.
You can make new array with full dates and fill empty positions with previous values. For example: you making an array may[31] for each day of may, initializate it with zeroes, and then do something like this:
may[1] = values[1];
for (int i = 2; i <= may.size(); ++i) {
if (may[i] == 0)
may[i] = may[i-1];
}
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With