Android MPchart饼图图例setCustom错误

时间:2017-03-15 06:55:37

标签: android charts mpandroidchart

我正在使用MPchart饼图。当我设置自定义图例数组时,它不接受该数组。

我的代码......

Legend l = chart.getLegend();
    l.setCustom(ColorTemplate.VORDIPLOM_COLORS, new String[] { "aaaaa", "bbbbb", "ccccc"});

...错误

Cannot resolve method 'setCustom(int[],java.lang.String[])'

我的MPchart版本:v3.0.0

如何解决此问题。?

2 个答案:

答案 0 :(得分:1)

我可以设置自定义图例:

 // Use Legend Entry

    LegendEntry l1=new LegendEntry("Bank", Legend.LegendForm.DEFAULT,10f,2f,null, Color.RED);
    LegendEntry l2=new LegendEntry("Chitfund", Legend.LegendForm.CIRCLE,10f,2f,null, Color.GREEN);
    LegendEntry l3=new LegendEntry("Mobile", Legend.LegendForm.LINE,10f,1f,null,Color.BLACK);
    LegendEntry l4=new LegendEntry("Internet", Legend.LegendForm.DEFAULT,10f,2f,null, Color.BLUE);
    LegendEntry l5=new LegendEntry("ATM", Legend.LegendForm.DEFAULT,10f,2f,null, Color.DKGRAY);
    LegendEntry l6=new LegendEntry("Check", Legend.LegendForm.SQUARE,10f,1f,null,Color.CYAN);

    Legend l=piechart.getLegend();
    l.setCustom(new LegendEntry[]{l1,l2,l3,l4,l5,l6});

    //For set the same color to chart
    piedataSet.setColors(new int[]{Color.RED, Color.GREEN, Color.BLACK, Color.BLUE, Color.DKGRAY, Color.CYAN});//Color is set based on your Legend entry color

图例输入参数说明:

 LegendEntry l1=new LegendEntry("Bank", Legend.LegendForm.DEFAULT,10f,2f,null, Color.RED);

         Parameter                   Example
   --------------------------------------------------------

         legend label         -      "Bank"
         legend form          -      Legend.LegendForm.DEFAULT[ (DEFAULT Shape is Square) Default instead of any (like Square, circle, line)]
         formsize             -      10f,2f [height of the width]
         dashboard effect     -      null
         color                -      Color.RED

答案 1 :(得分:0)

为我工作尝试这个

为字符串数组添加颜色

String[] array;

array = new String[<**size of your color arraylist**>];
            for (int i = 0; i < **size of your color arraylist**; i++) {
                array[i] = **color arraylist**.get(i);
            }

设置自定义颜色

  if (array.length > 0 && array !=null) {
            l.setCustom(l.getColors(), array);
            }