0
テーブルからいくつかの値を取得し、複数の折れ線グラフに格納したいと考えています。 私は1つの列(太っている)を使用するとグラフが正しく表示されますが、別の列を2つ追加するとエラーメッセージが表示されます。 データセットとレンダラーはnullであってはならず、 エラーを修正するのを手伝ってください。複数行のAChartGraph
public XYMultipleSeriesDataset getFatDataset() {
XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
Cursor c = database.rawQuery("select * from dailystats;", null);
float i = 1.0f;
c.moveToFirst();
XYSeries seriesFat = new XYSeries("Fat");
while(!c.isAfterLast()) {
seriesFat.add(i++, c.getDouble(2));
c.moveToNext();
}
dataset.addSeries(seriesFat);
i = 1.0f;
c.moveToFirst();
XYSeries seriesProtein = new XYSeries("Protein");
while(!c.isAfterLast()) {
seriesProtein.add(i++, c.getDouble(3));
c.moveToNext();
}
dataset.addSeries(seriesProtein);
c.moveToFirst();
i = 1.0f;
XYSeries seriesCarbs = new XYSeries("Carbs");
while(!c.isAfterLast()) {
seriesCarbs.add(i++, c.getDouble(4));
c.moveToNext();
}
dataset.addSeries(seriesCarbs);
return dataset;
}
そしてここでグラフを生成するためのコードである:報告
public class ChartActivity {
public Intent getIntent(Context context)
{
XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
XYMultipleSeriesRenderer mrenderer = new XYMultipleSeriesRenderer();
XYSeriesRenderer renderer = new XYSeriesRenderer();
mrenderer.addSeriesRenderer(renderer);
DatabaseAdapter dba = new DatabaseAdapter(context);
dba.open();
Intent intent = ChartFactory.getLineChartIntent(context, dba.getFatDataset(), mrenderer,"line graph");
dba.close();
return intent;
}
}