1

我正在使用MPAndroidChart 库。我对 BarChart 有一些疑问。

这是我的图表数据。

ArrayList<String> xVals = new ArrayList<String>();
xVals.add("AAA");
xVals.add("BBB");
xVals.add("Z1");
xVals.add("CCC");
xVals.add("DDD");
xVals.add("Z2");
xVals.add("EEE");
xVals.add("FFF");
xVals.add("Z3");

条形图数据集。

ArrayList<BarEntry> yVals = new ArrayList<BarEntry>();
ArrayList<BarEntry> yValsSet = new ArrayList<BarEntry>();
yVals.add(new BarEntry(42, 0));
yVals.add(new BarEntry(15, 1));
yValsSet.add(new BarEntry(57, 2));
yVals.add(new BarEntry(35, 3));
yVals.add(new BarEntry(14, 4));
yValsSet.add(new BarEntry(49, 5));
yVals.add(new BarEntry(7, 6));
yVals.add(new BarEntry(21, 7));
yValsSet.add(new BarEntry(28, 8));

还有图表。 在此处输入图像描述

x 轴上的“Z3”未显示。

并且图表不在正确的位置。

深灰色的是 CCC 的值,但它显示在 Z1。

如何解决?


更新:如果我只使用一个数据集,效果很好。

4

1 回答 1

0

属于彼此的值(根据它们的 x 轴标签)必须位于相同的 x 索引上。

意思是:

如果要在 x-index 上使用描述为“AAA”的值 30 和 25,则需要执行以下操作:

ArrayList<String> xVals = new ArrayList<String>();
xVals.add("AAA");
xVals.add("BBB");
//... and so on

ArrayList<BarEntry> vals1 = new ArrayList<BarEntry>();
ArrayList<BarEntry> vals2 = new ArrayList<BarEntry>();

// this will be above "AAA"
vals1.add(new BarEntry(30, 0)); // use x-index 0 for both
vals2.add(new BarEntry(25, 0));

// this will be above "BBB"
vals1.add(new BarEntry(50, 1)); // use x-index 1 for both
vals2.add(new BarEntry(60, 1));
于 2014-11-12T14:32:23.747 回答