MPAndroidChart学习笔记(二)

一幅简单的BarChart

效果:

效果图

代码:

private void initBarChart() {
        mBarChart = (BarChart) findViewById(R.id.bar_chart);

        /*1.chart格式设置*/
        mBarChart.setDrawGridBackground(false);//无背景网格
        mBarChart.setDrawBorders(false);//无边框

        //图表描述
        Description description = new Description();
        description.setText("近一周学习时间图(分钟/天)");//描述内容
        description.setTextColor(0xff000000);//描述字体颜色
        description.setTextSize(16f);//描述字体大小
        description.setTextAlign(Paint.Align.LEFT);//文字左对齐
        description.setPosition(100,100);//设置图表描述
        mBarChart.setDescription(description);

        mBarChart.setTouchEnabled(false);//可触摸
        mBarChart.setDragEnabled(true);//可拖动
        mBarChart.setScaleEnabled(true);//可放缩

        /*2.获取坐标轴并进行设置*/
        //获取和设置X轴
        XAxis xAxis = mBarChart.getXAxis();//获取X轴
        xAxis.setEnabled(true);//设置显示X轴
        xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);//X轴位置
        xAxis.setAxisLineWidth(2);//设置X轴宽度
        xAxis.setDrawGridLines(false);//无网格
        xAxis.setDrawAxisLine(true);//显示X轴
        /*X轴数据*/
        final String[] xValues = {"3.14","3.15","3.16","3.17","3.18","3.19","3.20"};
        /*给X轴设置数据*/
        xAxis.setValueFormatter(new IAxisValueFormatter() {
            @Override
            public String getFormattedValue(float value, AxisBase axis) {
                return xValues[(int)value];
            }

            @Override
            public int getDecimalDigits() {
                return 0;
           }
        });
        xAxis.setDrawLabels(true);

        //获取并设置Y轴
        YAxis leftYAxis = mBarChart.getAxisLeft();//获取左侧Y轴
        YAxis rightYAxis = mBarChart.getAxisRight();//获取右侧Y轴
        rightYAxis.setEnabled(false);//禁止显示右侧Y轴
        leftYAxis.setAxisLineWidth(2);
        leftYAxis.setDrawGridLines(false);
        /*leftYAxis.setStartAtZero(true);//设置从零开始显示*/

        /*3.添加数据*/
        ArrayList<BarEntry> entries1 = new ArrayList<>();//Entry就是折线图上的点
        entries1.add(new BarEntry(0,85));
        entries1.add(new BarEntry(1,88));
        entries1.add(new BarEntry(2,75));
        entries1.add(new BarEntry(3,69));
        entries1.add(new BarEntry(4,95));
        entries1.add(new BarEntry(5,77));
        entries1.add(new BarEntry(6,88));

        BarDataSet barDataSet = new BarDataSet(entries1,"使用时间");

        BarData barData = new BarData(barDataSet);

        mBarChart.setData(barData);
        mBarChart.invalidate();//刷新显示
    }

说明:

原理和LineChart一样,就是图表类型有改变

参考:MPAndroidChart学习笔记(一)

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 14,565评论 4 61
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,061评论 25 709
  • 2014年10月14日 20:46浏览(345) 最近,阿金有了一个新想法——有计划的写写自己的故事。但很快又陷入...
    镇南方良金阅读 1,387评论 0 1
  • 我记忆中第一段让我伤心恐惧的日子,是在初中。在初中,我不想和女生说话,不想上讲堂,不想表现自己,虽然我是入学第一。...
    枫羽326阅读 1,229评论 0 0
  • 公园里被这深秋的寒露侵袭了的血红的月季花,高昂着她骄傲的面庞,好像从不曾失去过她的娇艳,在被这瑟瑟秋风吹残的败叶之...
    鉬鈺阅读 2,472评论 3 4

友情链接更多精彩内容