Круговая диаграмма MPAndroidChart: не отображаются все метки - PullRequest
0 голосов
/ 18 мая 2018

Я использую компиляцию 'com.github.PhilJay: MPAndroidChart: v3.0.0' для круговой диаграммы в Android, но не могу увидеть все метки

Также отображается одна метка, но с несоответствием цвета.

    private void drawMap()
{

    ArrayList<PieEntry> yvalues = new ArrayList<PieEntry>();
    yvalues.add(new PieEntry(8f, "JAN"));
    yvalues.add(new PieEntry(15f, "FEB"));
    yvalues.add(new PieEntry(12f, "MAR"));
    yvalues.add(new PieEntry(25f, "APR"));
    yvalues.add(new PieEntry(23f, "MAY"));
    yvalues.add(new PieEntry(17f, "JUNE"));
    PieDataSet dataSet = new PieDataSet(yvalues, "Election Results");
    PieData data = new PieData();
    data.addDataSet(dataSet);
    data.setValueFormatter(new PercentFormatter());
    pcVehicle.setData(data);

    dataSet.setColors(ColorTemplate.VORDIPLOM_COLORS);
}<com.github.mikephil.charting.charts.PieChart
    android:padding="@dimen/padding_12"
    android:layout_margin="@dimen/margin_08"
    android:id="@+id/pcVehicle"
    android:layout_width="match_parent"
    android:layout_height="match_parent" />

enter image description here

1 Ответ

0 голосов
/ 18 мая 2018

Я не вижу нигде в вашем коде, рисую настоящую легенду.Поэтому после инициализации пирога просто установите Legend

private void drawMap(){
    ArrayList<PieEntry> yvalues = new ArrayList<PieEntry>();
    yvalues.add(new PieEntry(8f, "JAN"));
    yvalues.add(new PieEntry(15f, "FEB"));
    yvalues.add(new PieEntry(12f, "MAR"));
    yvalues.add(new PieEntry(25f, "APR"));
    yvalues.add(new PieEntry(23f, "MAY"));
    yvalues.add(new PieEntry(17f, "JUNE"));
    PieDataSet dataSet = new PieDataSet(yvalues, "Election Results");
    PieData data = new PieData();
    data.addDataSet(dataSet);
    data.setValueFormatter(new PercentFormatter());
    pcVehicle.setData(data);

    dataSet.setColors(ColorTemplate.VORDIPLOM_COLORS);

    Legend l = pcVehicle.getLegend();
    l.setVerticalAlignment(Legend.LegendVerticalAlignment.BOTTOM);
    l.setHorizontalAlignment(Legend.LegendHorizontalAlignment.LEFT);
    l.setOrientation(Legend.LegendOrientation.HORIZONTAL);
    l.setWordWrapEnabled(true);
    l.setDrawInside(false);
    l.setYOffset(5f);
}
...