MPChart 柱状图 基础用法

本文详细介绍了如何初始化BarChart配置,包括关闭纵轴、图例和描述信息,开启缩放交互,设置X轴位置、文本旋转角度和大小等,并展示了如何设置显示数据,包括创建BarEntry列表、X轴文本、柱子颜色,以及如何将数据集添加到BarChart中并进行刷新。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

先看一下效果

 

首先我们来初始化一下barchart的配置:

  private void initBarChar(BarChart barChart) {
        XAxis xAxis = barChart.getXAxis();

        //关闭右边纵轴
        barChart.getAxisRight().setEnabled(false);
        //关闭图例
        barChart.getLegend().setEnabled(false);
        //关闭描述信息的显示
        barChart.getDescription().setEnabled(false);
        //打开缩放交互
        barChart.setPinchZoom(true);
        //关闭网格线水平网格线
        barChart.getAxisLeft().setDrawGridLines(false);
        //关闭坐标纵轴
        barChart.getAxisLeft().setEnabled(false);
        barChart.setClickable(false);
        //设置x轴显示在下方
        xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);
        xAxis.setDrawGridLinesBehindData(true);
        xAxis.setGranularityEnabled(true);
        xAxis.setDrawLimitLinesBehindData(false);
        //设置X轴文本旋转角度
        xAxis.setLabelRotationAngle(45);
        xAxis.setDrawGridLines(false);
        //设置X轴文本大小
        xAxis.setTextSize(7);
}

 

设置显示的数据

        List<BarEntry> barEntries = new ArrayList<>();
        //X轴文本 与barEntries 长度一致
        List<String> xLabels = new ArrayList<>();
        //柱子文本 与barEntries 长度一致
        List<Integer> colors = new ArrayList<>();


//        ......省略数据赋值
        
        BarDataSet barDataSet = new BarDataSet(barEntries, "Svr");
        barDataSet.setColors(colors);

        //给柱状图barChart赋值
         if (barChart.getBarData() == null) {
            BarData barData = new BarData();
            barData.addDataSet(barDataSet);
            barChart.setData(barData);
        } else {
            barChart.getBarData().addDataSet(barDataSet);
        }

        barDataSet.setValueTextSize(7);
        XAxis xAxis = barChart.getXAxis();
        xAxis.setValueFormatter(new IndexAxisValueFormatter(xLabels));
        xAxis.setAxisMinimum(-0.5f);
        xAxis.setAxisMaximum(bcGnssSVRInfo.getBarData().getXMax() + 1.5f);//x轴右边长度
        //让X轴显示所有文本
        xAxis.setLabelCount(xLabels.size());
        
        //刷新 
        barChart.getBarData().notifyDataChanged();
        barChart.notifyDataSetChanged();
        barChart.invalidate();

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值