我正在尝试使用库 aChartengine 在条形图中显示查询结果。要查看在将它们放入 ArrayList 之前获取的所有数据,然后在 for 循环中输入 double 组时?这是我目前所拥有的。
private void grafico(String years){
SQLiteDatabase db = new ReHelper(getActivity()).getReadableDatabase();
ArrayList <Double> dettagli = new ArrayList<Double>();
String sql ="SELECT number FROM Table GROUP BY motion";
Cursor c = db.rawQuery(sql, null);
while (c.moveToNext()){
double number= c.getDouble(0);
dettagli.add(number);
XYSeries eeSeries = new XYSeries("series");
for(int i=0;i<...;i++){
eeSeries.add(i);
}
}
}
最佳答案
如果我理解你的问题,你应该这样做:
获取您的数据:
XYSeries eeSeries = new XYSeries("series");
int i = 0;
Cursor c = db.rawQuery(sql, null);
while (c.moveToNext()){
double number= c.getDouble(0);
eeSeries.add(i++, number);
}
c.close();
准备您的图表/渲染器:
// Create a dataset to hold each series
XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
// Add the series to the dataset
dataset.addSeries(eeseries);
// Creating XYSeriesRenderer
XYSeriesRenderer renderer = new XYSeriesRenderer();
renderer.setFillPoints(true);
renderer.setLineWidth(2);
renderer.setDisplayChartValues(true);
// Creating a XYMultipleSeriesRenderer to customize the whole chart
XYMultipleSeriesRenderer multiRenderer = new XYMultipleSeriesRenderer();
multiRenderer.setXLabels(0);
multiRenderer.setChartTitle("Title");
multiRenderer.addSeriesRenderer(renderer);
显示图形的最简单方法是使用 ChartFactory:
Intent intent = ChartFactory.getBarChartIntent(
getBaseContext(), dataset, multiRenderer, Type.DEFAULT);
startActivity(intent);
关于用于图表引擎的 Android 数组,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22458091/