Java MPAndroidChart添加setData编译器错误
我正在尝试使用MPAndroidChart创建一个折线图。我在网上看了很多例子,它们似乎都建议您向图表中添加数据,如下所示:Java MPAndroidChart添加setData编译器错误,java,android,mpandroidchart,Java,Android,Mpandroidchart,我正在尝试使用MPAndroidChart创建一个折线图。我在网上看了很多例子,它们似乎都建议您向图表中添加数据,如下所示: LineChart graph = (LineChart) view.findViewById(R.id.chart); // creating list of entry ArrayList<Entry> entries = new ArrayList<>(); entries.add(new Entry(4f,
LineChart graph = (LineChart) view.findViewById(R.id.chart);
// creating list of entry
ArrayList<Entry> entries = new ArrayList<>();
entries.add(new Entry(4f, 0));
entries.add(new Entry(8f, 1));
entries.add(new Entry(6f, 2));
entries.add(new Entry(2f, 3));
entries.add(new Entry(18f, 4));
entries.add(new Entry(9f, 5));
// creating labels
ArrayList<String> labels = new ArrayList<String>();
labels.add("January");
labels.add("February");
labels.add("March");
labels.add("April");
labels.add("May");
labels.add("June");
graph.setData(entries, labels);
但是我得到了这个运行时错误:
致命异常:主
进程:com.ebucher.lisa,PID:11365
java.lang.NegativeArraySizeException:-2
位于com.github.mikephil.charting.utils.Transformer.generateTransformedValuesLine(Transformer.java:181)
位于com.github.mikephil.charting.renderer.LineChartRenderer.drawValues(LineChartRenderer.java:570)
位于com.github.mikephil.charting.charts.BarLineChartBase.onDraw(BarLineChartBase.java:272)
在android.view.view.draw(view.java:17469)
在android.view.view.updateDisplayListIfDirty(view.java:16464)上
在android.view.view.draw(view.java:17238)
位于android.view.ViewGroup.drawChild(ViewGroup.java:3921)
位于android.view.ViewGroup.dispatchDraw(ViewGroup.java:3711)
在android.view.view.draw(view.java:17472)
在android.view.view.updateDisplayListIfDirty(view.java:16464)上
在android.view.view.draw(view.java:17238)
位于android.view.ViewGroup.drawChild(ViewGroup.java:3921)
位于android.view.ViewGroup.dispatchDraw(ViewGroup.java:3711)
在android.view.view.updateDisplayListIfDirty(view.java:16459)上
在android.view.view.draw(view.java:17238)
位于android.view.ViewGroup.drawChild(ViewGroup.java:3921)
位于android.support.v4.widget.DrawerLayout.drawChild(DrawerLayout.java:1373)
位于android.view.ViewGroup.dispatchDraw(ViewGroup.java:3711)
在android.view.view.updateDisplayListIfDirty(view.java:16459)上
在android.view.view.draw(view.java:17238)
位于android.view.ViewGroup.drawChild(ViewGroup.java:3921)
位于android.view.ViewGroup.dispatchDraw(ViewGroup.java:3711)
在android.view.view.updateDisplayListIfDirty(view.java:16459)上
在android.view.view.draw(view.java:17238)
位于android.view.ViewGroup.drawChild(ViewGroup.java:3921)
位于android.view.ViewGroup.dispatchDraw(ViewGroup.java:3711)
在android.view.view.updateDisplayListIfDirty(view.java:16459)上
在android.view.view.draw(view.java:17238)
位于android.view.ViewGroup.drawChild(ViewGroup.java:3921)
位于android.view.ViewGroup.dispatchDraw(ViewGroup.java:3711)
在android.view.view.updateDisplayListIfDirty(view.java:16459)上
在android.view.view.draw(view.java:17238)
位于android.view.ViewGroup.drawChild(ViewGroup.java:3921)
位于android.view.ViewGroup.dispatchDraw(ViewGroup.java:3711)
在android.view.view.updateDisplayListIfDirty(view.java:16459)上
在android.view.view.draw(view.java:17238)
位于android.view.ViewGroup.drawChild(ViewGroup.java:3921)
位于android.view.ViewGroup.dispatchDraw(ViewGroup.java:3711)
在android.view.view.draw(view.java:17472)
在com.android.internal.policy.PhoneWindow$DecorView.draw上(PhoneWindow.java:3205)
在android.view.view.updateDisplayListIfDirty(view.java:16464)上
在android.view.ThreadedRenderer.updateViewTreeDisp
LineDataSet dataSet = new LineDataSet(entries, "# of Calls");
LineData lineData = new LineData(dataSet);
graph.setData(lineData);
ArrayList<Entry> entries = new ArrayList<>();
entries.add(new Entry(4f, 0));
entries.add(new Entry(8f, 1));
entries.add(new Entry(6f, 2));
entries.add(new Entry(2f, 3));
entries.add(new Entry(18f, 4));
// creating labels
ArrayList<String> labels = new ArrayList<String>();
labels.add("January");
labels.add("February");
labels.add("March");
labels.add("April");
labels.add("May");
LineDataSet dataSet = new LineDataSet(entries, "# of Calls");
ArrayList<ILineDataSet> dataSetList = new ArrayList<ILineDataSet>();
dataSets.add(dataSet ); // add the datasets
LineData lineData = new LineData(dataSetList);
graph.setData(lineData);
LineChart graph = (LineChart) view.findViewById(R.id.chart);
// creating list of entry
ArrayList<Entry> entries = new ArrayList<>();
entries.add(new Entry(0, 4f));
entries.add(new Entry(1, 8f));
entries.add(new Entry(2, 6f));
entries.add(new Entry(3, 2f));
entries.add(new Entry(4, 18f));
entries.add(new Entry(5, 9f));
LineDataSet dataSet = new LineDataSet(entries, "# of Calls");
LineData lineData = new LineData(dataSet);
graph.setData(lineData);
List<Entry> entries = ...;
Collections.sort(entries, new EntryXComparator());
compile 'com.github.PhilJay:MPAndroidChart:v2.0.9'