饼图-如何删除饼图上的x标签并在其旁边显示ite?

时间:2018-06-29 13:25:18

标签: android pie-chart mpandroidchart

I want show like this我正在处理饼图,而我正在使用MP Android图表库。现在,问题是我不想在饼图上显示标签名称,并且我想在饼图旁边显示所有标签名称。

           public  void  setPieChart()
{
    PieChart pieChart = (PieChart) findViewById(R.id.piechart);
    pieChart.setUsePercentValues(true);
    ArrayList<Entry> yvalues = new ArrayList<Entry>();
    yvalues.add(new Entry(8f, 0));
    yvalues.add(new Entry(15f, 1));
    yvalues.add(new Entry(12f, 2));
    yvalues.add(new Entry(25f, 3));
    yvalues.add(new Entry(23f, 4));
    yvalues.add(new Entry(17f, 5));

    PieDataSet dataSet = new PieDataSet(yvalues, "");
   // PieDataSet dataSet = new PieDataSet(yValues, "");
    for (Entry pieEntry : yvalues){
        if(pieEntry.getVal() < 10)
        {
            pieEntry.setXIndex(0);
        }
    }
    ArrayList<String> xVals = new ArrayList<String>();

    xVals.add("January");
    xVals.add("February");
    xVals.add("March");
    xVals.add("April");
    xVals.add("May");
    xVals.add("June");
    xVals.add("January");
    xVals.add("February");
    xVals.add("March");
    xVals.add("April");
    xVals.add("May");
    xVals.add("June");

    PieData data = new PieData(xVals, dataSet);
    data.setValueFormatter(new PercentFormatter());
    pieChart.setData(data);
}

2 个答案:

答案 0 :(得分:0)

尝试下面的代码,我认为这将有助于在饼图旁边显示标签

        Legend legend = pieChart.getLegend();
        legend.setPosition(Legend.LegendPosition.RIGHT_OF_CHART_CENTER);
        legend.setXEntrySpace(7f);
        legend.setYEntrySpace(5f);
        legend.setYOffset(0f);

答案 1 :(得分:0)

如果需要外部x值,请尝试此解决方案

PieDataSet pieDataSet = new PieDataSet(yEntrys,"");
pieDataSet.setXValuePosition(PieDataSet.ValuePosition.OUTSIDE_SLICE);
PieData pieData = new PieData(pieDataSet);
pieChart.setData(pieData);