我在需要实现图表的项目项目中工作,我决定使用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 );
}
答案 0 :(得分:2)
如果您创建自定义Chart
类并覆盖init()
,则可以执行此操作。
在此方法中,图表初始化LegendRenderer
,这是您需要进入并进行更改的点。
创建自定义LegendRenderer
并确保所有测量都适用于那些可绘制的。 drawForm()
方法将允许您绘制图像而不是默认形式(圆形,方形,线条)。