2017-03-26 1 views
1

MPAndroidChartを使用して問題が発生しました:棒グラフで表示するエントリデータがありますが、xaxisラベルが表示されません。それらはチャート値ごとに1つ、すぐに「バー」の下に表示されます。MPAndroidChart:データ値に対応しないXAxis値

enter image description here

そして、これは私のコードです:

これは今何が起こっているかである

ArrayList<BarEntry> entries1 = my entries...; 
    final ArrayList<String> stringList1 = my strings...; 

    XAxis xAxis1 = chartCost.getXAxis(); 
    xAxis1.setPosition(XAxis.XAxisPosition.BOTTOM); 
    xAxis1.setDrawGridLines(false); 
    xAxis1.setCenterAxisLabels(true); 
    /* 
    xAxis1.setValueFormatter(new IAxisValueFormatter() { 
     @Override 
     public String getFormattedValue(float value, AxisBase axis) { 
      return stringList1.get((int)value); 
     } 
    }); 
    */ 

    BarDataSet set = new BarDataSet(entries1, "myData"); 
    BarData data = new BarData(set); 
    chartCost.setData(data); 
    chartCost.setFitBars(true); 
    chartCost.invalidate(); 

entries1とstringList1が正しく装着されています。ここでは例です:私はIAxisValueFormatterをdecomment場合

- x: 0, y: 22,90 
- x: 1, y: 21,53 
- x: 2, y: 18,49 

、float値は、すべての小数点以下の値がある、あなたが見ることができるように、私のエントリのxの値に対応しますが、されていません!

私はこの(バーの下の場所のラベル)を取得したい: enter image description here

をしかし、私はそれをどのように行うことができますか? ありがとう!

答えて

2

は、あなたのコード内の行の下に

xAxis1.setCenterAxisLabels(false); 
xAxis1.setGranularity(1f); 

setCenterAxisLabelsを含め、デフォルト値はfalseです。それは必須ではありません。それをtrueに設定した場合はfalseにします。バーが連続するx値の間にある場合は

関連する問題