如何使用MPAndroidChartBarChart比较两组数据。

它看起来应如下图所示:
android - 如何使用MPAndroidChart创建带有分组条形图的BarChart?-LMLPHP

我编辑了一个代码,该代码来自github中的一个示例项目。
如何将100f and 110f值放在一个Xaxis标签Whole Number

        Score score1 = new Score(100f, 0, "Whole Number");
        mRealm.copyToRealm(score1);
        Score score2 = new Score(110f, 0, "Whole Number");
        mRealm.copyToRealm(score2);

最佳答案

是的,这很容易做到。

您需要的是带有多个BarChartBarDataSets,其中每组(在您的情况下)代表一种性别(男人或女人)。

  • 这是how to create a BarChart with multiple DataSets
  • 的示例
  • 这是how to use MPAndroidChart with Realm.io的教程

  • 示例代码(无realm.io)
        List<String> xValues = ...; // "Denmark", "Finland", ...
    
        XAxis xAxis = chart.getXAxis();
        xAxis.setValueFormatter(new MyValueFormatter(xValues));
    
        // create 2 datasets
        BarDataSet set1 = new BarDataSet(valuesMen, "Men");
        set1.setColor(Color.BLUE);
        BarDataSet set2 = new BarDataSet(valuesWomen, "Women");
        set2.setColor(Color.RED);
    
        BarData data = new BarData(set1, set2);
        chart.setData(data);
        chart.groupBars(...); // available since release v3.0.0
        chart.invalidate(); // refresh
    

    如果您需要进一步的帮助,可以在Wiki上找到关于BarChart分组的detailed tutorial

    如果要将“BarChart”中的值彼此“堆叠”,则需要创建一个stacked-barchart:Android Stacked Bars Chart

    10-08 08:48