LineChartの作成に問題があります。すべての行を表示する必要があるときに最後のLineを表示しています。ここでのコードは次のとおりです。MPAndroidChart LineChart LineDataだけを表示
Collections.addAll(labels,` column);
dataSets = new ArrayList<ILineDataSet>();
for (monthlysales company : companieslist) {
entries.clear();
for (int j = 0; j < listofcompanies.Total.size(); j++) {
entries.add(new Entry(Float.parseFloat(listofcompanies.Total.get(j)), j));
}
setComp1 = new LineDataSet(entries, company.StoreName);
setComp1.setAxisDependency(YAxis.AxisDependency.LEFT);
setComp1.setColor(Color.BLUE);
dataSets.add(setComp1);
}
LineData data = new LineData(column,dataSets);
linechart.setData(data);
linechart.setDescription("Sales");
linechart.animateXY(5000,5000);
linechart.setPinchZoom(true);
linechart.setDoubleTapToZoomEnabled(true);
linechart.setDragDecelerationEnabled(true);
linechart.notifyDataSetChanged();
linechart.invalidate();
}
これは実際に理にかなっている、あなたに
私はそれを置き換えましたが、それはデバッグすると、奇妙な仕事をしませんでした、linechart.setData(データ)のデータ;すべてのデータを含むmYValsのリストを含む4つのmDataSetsがすべて存在することがわかります。ブール値や、すべての行を表示するためにトグルする必要があるものはありますか?ありがとうございます – Albert
いいえブール値はありません。毎回setComp1を別のオブジェクトに初期化してみてください。 –
は、これを 'List entries = new ArrayList <>()で使用すると、' LineDataSet setComp1 = new LineDataSet(entries、company.StoreName) ;私は答えで言及しました –