我想绘制一个 XY 线图,Y 轴上有一些 double 值,X 轴上有一些字符串值。但 XYSeries 仅采用 double /长整型值。那么,有什么办法可以在 X 轴上使用字符串数组吗?
感谢您的任何建议。
代码:
//fDates are strings
XYSeries fPriceseries = new XYSeries("Fuel prices");
for(int i=0;i<fDates.length;i++)
{
long fDate = Long.parseLong(fDates[i]);
fPriceseries.add(fDate, fPrice[i]);
}
XYSeries fMileageSeries = new XYSeries("Mileage");
for(int i=0;i<fDates.length;i++)
{
long fDate = Long.parseLong(fDates[i]);
fMileageSeries.add(fDate, fMileage[i]);
}
最佳答案
使用时间序列:
fDates 作为日期数组
TimeSeries fPriceseries = new TimeSeries("Fuel prices");
for(int i=0;i<fDates.length;i++)
{
fPriceseries.add(fDates[i], fPrice[i]);
}
TimeSeries fMileageSeries = new TimeSeries("Mileage");
for(int i=0;i<fDates.length;i++)
{
fMileageSeries.add(fDates[i], fMileage[i]);
}
fDates 作为字符串数组 - 使用 SimpleDateFormat。
SimpleDateFormat sdf = new SimpleDateFormat("dd/MM/yyyy");
TimeSeries fPriceseries = new TimeSeries("Fuel prices");
for(int i=0;i<fDates.length;i++)
{
fPriceseries.add(sdf.parse(fDates[i]), fPrice[i]);
}
TimeSeries fMileageSeries = new TimeSeries("Mileage");
for(int i=0;i<fDates.length;i++)
{
fMileageSeries.add(sdf.parse(fDates[i]), fMileage[i]);
}
引用资料:
http://www.achartengine.org/content/javadoc/org/achartengine/model/TimeSeries.html http://docs.oracle.com/javase/6/docs/api/java/text/SimpleDateFormat.html
关于android - 在 achartengine 中使用字符串代替 double /长折线图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18246701/