1

特定の日付で保存された動物の体重のプロットを作成しようとしています。Date と Weight の 2 つの変数を持つ Weight Class があります。

これが私が使用しているコードです。

else if (str.equals("Weight"))
    {
        mDbHelper.open();
        wtArray = mDbHelper.getWeight();
        mDbHelper.close();

       TimeSeries diaSeries = new TimeSeries("Weight");

        for ( int i =0; i <wtArray.size(); i++)
        {
           Weight wt = wtArray.get(i);
           diaSeries.add(wt.date, wt.weight);
        }


        XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
        dataset.addSeries(diaSeries);

        XYMultipleSeriesRenderer mrenderer = new XYMultipleSeriesRenderer();

        XYSeriesRenderer renderer = new XYSeriesRenderer();
        renderer.setColor(Color.RED);
        renderer.setPointStyle(PointStyle.DIAMOND);
        renderer.setFillPoints(true);
        mrenderer.addSeriesRenderer(renderer);

        graphLayout.addView(ChartFactory.getTimeChartView(this, dataset, mrenderer, "MM/dd/yyyy"));
    }

このコードの問題は、x 軸に何も表示されず、グラフの線も表示されないことです。

次に、特定の日付から別の日付までのデータを表示したい場合はどうすればよいですか? 2月から3月など?

4

1 に答える 1

0

あなたのコードを使用して、コンパイルして実行するサンプルを作成しました。チャートを正しく表示する以下のコードを参照してください。コードは を構築するIntentため、最後の行を変更して を構築する必要がありますView

そのため、本当にデータをモデルに入れていると確信している場合は、レイアウトを確認する必要があります。チャート ビューをレイアウトに正しく追加していない可能性があります。

List<Date> wtArray = new ArrayList<Date>();
double[] weight = new double[] { 70, 71, 74, 73, 70, 71, 75, 76, 75, 73, 75, 73 };
for (int i = 0; i < 12; i++) {
  wtArray.add(new Date(108, i, 1));
}
TimeSeries diaSeries = new TimeSeries("Weight");

for (int i = 0; i < wtArray.size(); i++) {
  diaSeries.add(wtArray.get(i), weight[i]);
}

XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
dataset.addSeries(diaSeries);

XYMultipleSeriesRenderer mrenderer = new XYMultipleSeriesRenderer();

XYSeriesRenderer renderer = new XYSeriesRenderer();
renderer.setColor(Color.RED);
renderer.setPointStyle(PointStyle.DIAMOND);
renderer.setFillPoints(true);
mrenderer.addSeriesRenderer(renderer);

return ChartFactory.getTimeChartIntent(context, dataset, mrenderer, "MM/dd/yyyy");
于 2012-09-15T05:35:47.047 に答える