我使用ListView显示一组从托管服务器获取数据的图表。我正在使用MPAndroidChart库,并已成功使用除CombinedChart和PieChart之外的所有图表。我尝试在两者上寻找文档,但仍然无法理解这些图表实现。任何人都可以向我解释这两个图表的工作情况:1)CombinedChart 2)PieChart。同样在组合图表中,我们可以传递线条和条形数据,但如何将这两个数据集添加到图表中。根据我的理解,我可以通过创建CombinedChartData对象来实现。但由于应用程序崩溃导致NullPointerException,我无法执行此操作。我在下面显示了我的代码供参考:
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_activity2);
combinedChart=(CombinedChart)findViewById(R.id.combined_chart);
ArrayList<String> labels = getLabels();
ArrayList<Entry> entries = new ArrayList<>(getEntries());
ArrayList<BarEntry> entries1 = new ArrayList<>(getEntries1());
LineDataSet lineDataSet = new LineDataSet(entries,"Line Data");
BarDataSet barDataSet = new BarDataSet(entries1,"Bar Data");
barDataSet.setColor(0);
CombinedData combinedData = new CombinedData(labels);
combinedData.addDataSet(lineDataSet);
combinedData.addDataSet(barDataSet);
combinedChart.setData(combinedData);
combinedChart.invalidate();
答案 0 :(得分:0)
看看这个例子:
CombinedChart :https://github.com/PhilJay/MPAndroidChart/blob/master/MPChartExample/src/com/xxmassdeveloper/mpchartexample/CombinedChartActivity.java
您要做的是创建LineData
和BarData
对象,然后将其设置为CombinedData
。一切都在这个例子中。
您所做的事情无法奏效,因为您从未将“combineddatasets”添加到某种数据对象中,然后为图表设置这些数据对象。
CombinedData data = new CombinedData(yourLabels);
data.setData(generateLineData());
data.setData(generateBarData());
mChart.setData(data);
你应该找到你需要的一切。