在之前《Android图表(最新版)----折线图》中,介绍过MPAndroidChart中常用的折线图的用法,接下来将简单介绍一下柱状图和饼状图的用法。
1、柱状图BarChart
先看代码,跟折线图基本一致,个别API单独介绍一下。
private BarChart bar_chart;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_bar_chart);
bar_chart = findViewById(R.id.bar_chart);
//设置desc
Description description = new Description();
description.setText("天气变化");
bar_chart.setDescription(description);
//是否绘制柱状图的背景
bar_chart.setDrawBarShadow(false);
//设置X轴
XAxis xAxis = bar_chart.getXAxis();
xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);
//设置网格线
xAxis.setDrawAxisLine(true);
xAxis.setDrawGridLines(false);
//设置Y轴
YAxis yAxis = bar_chart.getAxisLeft();
yAxis.setLabelCount(5,false);
//设置数据
bar_chart.setData(getBarData());
//设置y轴的动画
bar_chart.animateY(700);
}
private BarData getBarData() {
//设置数据点
List<BarEntry> entries = new ArrayList<>();
for (int i = 0; i < 10; i++) {
entries.add(new BarEntry(i, (float) (Math.random()*20)));
}
BarDataSet dataSet = new BarDataSet(entries,"预测值");
dataSet.setColors(ColorTemplate.VORDIPLOM_COLORS);
dataSet.setDrawValues(false);
BarData barData = new BarData(dataSet);
return barData;
}
setColors设置颜色:设置柱状图的颜色
效果:
2、饼状图PieChart
饼状图不像折线图和柱状图那样,有x,y轴参考,使用上和前者也不同。
(1)设置描述
这类API是和折线图一样。
//设置desc
Description description = new Description();
description.setText("占有率");
pie_chart.setDescription(description);
(2)中心圆的设置
//设置中心圆圈
pie_chart.setHoleRadius(50f);
//中心圆圈外阴影
pie_chart.setTransparentCircleRadius(52f);
//设置中心的标题
pie_chart.setCenterText("Android");
//设置中心标题字体大小
pie_chart.setCenterTextSize(20);
(3)设置是否使用百分比
//设置是否使用百分比
pie_chart.setUsePercentValues(true);
(4)设置数据
设置数据和折线图一致。
//设置数据
pie_chart.setData(getPieData());
}
private PieData getPieData() {
List<PieEntry> entries = new ArrayList<>();
for (int i = 0; i < 5; i++) {
entries.add(new PieEntry((float) (Math.random() * 10),"数据"+(i+1)));
}
PieDataSet dataSet = new PieDataSet(entries,"数据");
dataSet.setSliceSpace(2f);
dataSet.setColors(ColorTemplate.VORDIPLOM_COLORS);
PieData pieData = new PieData(dataSet);
return pieData;
}
效果:
字体颜色大小可以自己设置,在实际的开发中,饼状图使用的比较少,折线图和柱状图能直观地反映数据动态变化的趋势,使用更加广泛。
版权声明:本文为qq_33235287原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。