我正在使用Achartengine生成TimeChart图。数据集包括从1/15/2003到12/4/2040(x轴)的日期,其具有Y轴的相应随机值。我正在动态显示图形,我一直在后台线程(AsyncTask)上读取值并重新绘制graphview。我有两个问题:
视图从1970年1月2日开始(我不知道为什么),我必须滚动到1/15/2003才能看到图表。我应该改变什么才能从2003年1月15日开始?
此外,我还有两个日期值FROM和TO(例如:FROM:2/17/2004 TO:6/23/2006),我想只在这个范围内显示图形。有没有办法做到这一点?
答案 0 :(得分:0)
我可以使用mRenderer.setYAxisMin解决第一个问题(新日期(“1/15/2003 11:16:00 AM”)。getTime())虽然这是一个弃用的方法,但它为我做了工作。现在,当我显示图表时,它从给定的数据开始,而不是1970年1月2日。
答案 1 :(得分:0)
在重新绘制之前,您可以使用所需的值动态设置Y轴最小值和最大值。
对于1.问题,也许更好的选择是设置平移限制,这样您就无法滚动到图表的空白部分。 你可以这样做
mRenderer.setPanLimits(new double[]{xMin, xMax, yMin, yMax});
你在这里计算限制
double xMin = minDate.getTime();
double xMax = maxDate.getTime();