【问题标题】:customize Legend in MPAndroidChart在 MPAndroidChart 中自定义 Legend
【发布时间】:2016-02-04 09:35:11
【问题描述】:

我正在从事需要实施图表的项目中的项目,我决定使用MPAndroidChart 它的工作很好,但我需要做一些对我来说完美的事情

首先我可以将条形更改为特定图像还是只需要图像,因为我在应用设计中将 3D 图像作为条形。

第二我可以将图例右侧的图例放在如下图的两行中并更改图例文本颜色

我的java代码

mChart = (BarChart) view.findViewById(R.id.chart);
        mChart.setDescription("");
        Legend mLegend = mChart.getLegend();
        //mLegend.setPosition(Legend.LegendPosition.RIGHT_OF_CHART_CENTER);
FillBarChart(mChart);
}


private void FillBarChart(BarChart barChart) {
        ArrayList<BarEntry> entries = new ArrayList<>();
        entries.add(new BarEntry(87f, 0));
        entries.add(new BarEntry(90f, 1));


        ArrayList<String> labels = new ArrayList<>();
        labels.add("Omeprazole 20 mg");
        labels.add("Esomeprazole 40 mg");

        BarDataSet dataSet = new BarDataSet(entries, " ");
        dataSet.setBarSpacePercent(40f);
        BarData barData = new BarData(labels, dataSet);
        dataSet.setColors(new int[]{R.color.omeprazole_color , R.color.esomeprazole_color} , getActivity());
        barChart.setData(barData);
        barChart.animateY(3000 , Easing.EasingOption.EaseOutBack );
    }

【问题讨论】:

    标签: java android mpandroidchart


    【解决方案1】:

    如果您创建自定义 Chart 类并覆盖 init(),则可以这样做。 在这个方法中,图表初始化了一个LegendRenderer,这就是你需要进入并进行更改的地方。

    创建一个自定义LegendRenderer 并确保所有可绘制对象的所有测量值都已到位。 drawForm() 方法将允许您绘制图像而不是默认形式(圆形、方形、线条)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多