MPAndroidChart-BarChart问题

时间:2014-11-11 07:54:04

标签: android mpandroidchart

我正在使用MPAndroidChart library。我对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");

BarChart数据集。

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));

图表。 enter image description here

&#34; Z3&#34;在x轴上没有显示。

图表并未处于正确的位置。

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

如何解决?


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

1 个答案:

答案 0 :(得分:0)

彼此相关的值(就其x轴标签而言)必须位于相同的x-index上。

这意味着:

如果要在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));