CombinedChart使用MPAndroidChart

时间:2015-04-06 07:30:05

标签: android charts mpandroidchart

我使用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();

1 个答案:

答案 0 :(得分:0)

看看这个例子:

CombinedChart https://github.com/PhilJay/MPAndroidChart/blob/master/MPChartExample/src/com/xxmassdeveloper/mpchartexample/CombinedChartActivity.java

您要做的是创建LineDataBarData对象,然后将其设置为CombinedData。一切都在这个例子中。 您所做的事情无法奏效,因为您从未将“combineddatasets”添加到某种数据对象中,然后为图表设置这些数据对象。

CombinedData data = new CombinedData(yourLabels);
data.setData(generateLineData());
data.setData(generateBarData());

mChart.setData(data);

PieChart https://github.com/PhilJay/MPAndroidChart/blob/master/MPChartExample/src/com/xxmassdeveloper/mpchartexample/PieChartActivity.java

你应该找到你需要的一切。