Android图表(最新版)----柱状图和饼状图

在之前《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版权协议,转载请附上原文出处链接和本声明。