根据几个月和几年中achartengine显示时间图 [英] Displaying time chart in achartengine based on months and years
本文介绍了根据几个月和几年中achartengine显示时间图的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我有一个基于我的数据库值的曲线图,其中y轴有值和X轴有日期。截至目前图表显示智者日期。但我想它显示不同的时间段一样每月和每年。
谁能给我任何想法?
谢谢
下面是我的code: -
FuelStoredInfo reportInfo =新FuelStoredInfo(背景);
reportInfo.open();
fPrice = reportInfo.getReportData(本);
fMileage = reportInfo.getReportMileage(本);
fDates = reportInfo.getReportDates(本);
reportInfo.close();
SimpleDateFormat的SDF =新的SimpleDateFormat(DD / MM / YYYY); TimeSeries的fPriceseries =新的TimeSeries(燃油价格);
的for(int i = 0; I< fDates.length;我++)
{
尝试
{
fPriceseries.add(sdf.parse(fDates [I] .trim()),fPrice [I]);
}
赶上(ParseException的E)
{
// TODO自动生成catch块
e.printStackTrace();
}
} TimeSeries的fMileageSeries =新的TimeSeries(里程);
的for(int i = 0; I< fDates.length;我++)
{
尝试
{
fMileageSeries.add(sdf.parse(fDates [I] .trim()),fMileage [I]);
}
赶上(ParseException的E)
{
// TODO自动生成catch块
e.printStackTrace();
}
}数据=新XYMultipleSeriesDataset();
dataset.addSeries(fPriceseries);
dataset.addSeries(fMileageSeries);
解决方案
从的角度AChartEngine时候,你可以通过改变可见区域和重绘图形调整的时间周期显示:
renderer.setXAxisMin(MINDATE);
renderer.setXAxisMax(MAXDATE);
chartView.repaint();
I have a line graph based on my database values where y axis has values and x axis has dates. As of now the chart is displayed date wise. But i want to display it different time periods like monthly and yearly.
Can anyone give me any ideas for this? Thank you
Here is my code:-
FuelStoredInfo reportInfo =new FuelStoredInfo(context);
reportInfo.open();
fPrice=reportInfo.getReportData(this);
fMileage = reportInfo.getReportMileage(this);
fDates =reportInfo.getReportDates(this);
reportInfo.close();
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
TimeSeries fPriceseries = new TimeSeries("Fuel prices");
for (int i = 0; i < fDates.length; i++)
{
try
{
fPriceseries.add(sdf.parse(fDates[i].trim()), fPrice[i]);
}
catch (ParseException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
TimeSeries fMileageSeries = new TimeSeries("Mileage");
for(int i=0;i<fDates.length;i++)
{
try
{
fMileageSeries.add(sdf.parse(fDates[i].trim()), fMileage[i]);
}
catch (ParseException e)
{
// TODO Auto-generated catch block
e.printStackTrace();
}
}
dataset = new XYMultipleSeriesDataset();
dataset.addSeries(fPriceseries);
dataset.addSeries(fMileageSeries);
解决方案
From the AChartEngine point of view, you can tweak the displaying period of time by changing the visible area and repainting the graph:
renderer.setXAxisMin(minDate);
renderer.setXAxisMax(maxDate);
chartView.repaint();
这篇关于根据几个月和几年中achartengine显示时间图的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文