MPAndroidChart 详细使用 - BarChart

chart下面的方法


getDescription().setEnabled(boolean enabled);//设置描述是否显示
setPinchZoom(boolean enabled);//设置x轴和y轴能否同时缩放。默认是否
setScaleEnabled(boolean enabled);//是否支持缩放
setScaleXEnabled(boolean enabled);//启用/禁用x轴上的缩放
setScaleYEnabled(boolean enabled);//启用/禁用Y轴上的缩放
setDragEnabled(boolean enabled);//是否支持拖动(平移)
setNoDataText("无数据"); // 设置没有数据时的文案
setDrawBarShadow(boolean enabled);//每条柱状图是否加上背景色
setDrawValueAboveBar(boolean enabled);//文字是显示在当前柱状图上面还是里面
setTouchEnabled(boolean enabled) // 启用/禁用与图表的所有可能的触摸交互
setDrawBorders(boolean enabled) //图表边框
setDoubleTapToZoomEnabled(true);//设置是否可以通过双击屏幕放大图表。默认是true
setHighlightEnabled(false);  //如果设置为true,则所有底层数据集都可以通过触摸突出显示/选择值。
setHighlightPerDragEnabled(true);//能否拖拽高亮线(数据点与坐标的提示线),默认是true
setDragDecelerationEnabled(true);//拖动时手放开是否会持续滚动,默认是true(true拖拽后有缓冲,false 立即停止,)
setDragDecelerationFrictionCoef(0.99f);//与setDragDecelerationEnabled配合,持续滚动时的速度快慢,[0,1) 0代表立即停止。

highlightValue(0f,-1)//重置高亮 

BarChart.apply {
                if (data != null) {
                    data.isHighlightEnabled = maxBean.totalAmount.toFloat()!=0f//没有有效数据不显示高亮
                    invalidate()
                }
            }

 

        

X轴(XAxis )设置


XAxis xAxis = barChart.getXAxis();//获取x轴
xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);//设置X轴标签显示位置
xAxis.setDrawGridLines(false);//不绘制格网线
xAxis.setGranularity(1f);//设置最小间隔,防止当放大时,出现重复标签。
xAxis.setLabelCount(7,true);//设置X轴标签值显示个数
xAxis.setDrawAxisLine(true);//设置X轴坐标线是否显示
xAxis.setDrawLabels(false);//设置X轴坐标值是否显示
IAxisValueFormatter xAxisFormatter = new IAxisValueFormatter(chart);
xAxis.setValueFormatter(xAxisFormatter); //设置X轴标签值格式

//可以设置一条警戒线,如下:
LimitLine ll = new LimitLine(8f, "警戒线");
ll.setLineColor(Color.RED);
ll.setLineWidth(4f);
ll.setTextColor(Color.GRAY);
ll.setTextSize(12f);
xAxis.addLimitLine(ll);
xAxis.setDrawLimitLinesBehindData(false);//设置警戒线是显示在柱状图上面还是下面,默认false

Y轴(YAxis )设置


YAxis leftAxis = chart.getAxisLeft(); //左侧Y轴
YAxis rightAxis = chart.getAxisRight();//右侧Y轴
rightAxis.setEnabled(false); //禁用右边轴
leftAxis.setAxisMaximum(50f);
leftAxis.setDrawAxisLine(false);//去掉左边y轴线
leftAxis.setTypeface(tfLight);
leftAxis.setLabelCount(5, false);//设置左侧Y轴显示几个标签
IAxisValueFormatter custom = new MyAxisValueFormatter();
leftAxis.setValueFormatter(custom);//设置Y轴标签值格式
leftAxis.setPosition(YAxisLabelPosition.OUTSIDE_CHART);//设置Y轴标签显示位置
leftAxis.setSpaceTop(

  • 21
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
使用 MPAndroidChart 绘制横向圆角柱状图的步骤如下: 1. 在你的项目中添加 MPAndroidChart 的依赖。 2. 在 XML 布局文件中添加一个 BarChart 控件。 3. 在代码中获取 BarChart 控件的实例,并进行一些基础设置,如设置 X 轴和 Y 轴的属性。 4. 创建一个 BarDataSet 对象,并设置数据。 5. 创建一个 BarData 对象,并将 BarDataSet 对象添加到 BarData 对象中。 6. 设置 BarData 对象到 BarChart 控件中,并进行一些样式设置,如设置柱状图的颜色、边框宽度等。 7. 最后调用 BarChart 控件的 invalidate() 方法刷新界面即可。 下面是一个示例代码,可以绘制横向圆角柱状图: ```java // 获取 BarChart 控件实例 BarChart barChart = findViewById(R.id.bar_chart); // 设置 X 轴和 Y 轴属性 barChart.getXAxis().setPosition(XAxis.XAxisPosition.BOTTOM); barChart.getXAxis().setDrawGridLines(false); barChart.getAxisLeft().setDrawGridLines(false); barChart.getAxisRight().setDrawGridLines(false); // 创建 BarDataSet 对象并设置数据 List<BarEntry> entries = new ArrayList<>(); entries.add(new BarEntry(0f, 5f)); entries.add(new BarEntry(1f, 6f)); entries.add(new BarEntry(2f, 7f)); entries.add(new BarEntry(3f, 8f)); entries.add(new BarEntry(4f, 9f)); BarDataSet dataSet = new BarDataSet(entries, "数据"); // 创建 BarData 对象并将 BarDataSet 添加到其中 BarData data = new BarData(dataSet); // 设置 BarData 到 BarChart 控件中 barChart.setData(data); // 设置柱状图的颜色、边框宽度等 dataSet.setColors(Color.parseColor("#3F51B5")); dataSet.setDrawValues(false); dataSet.setBarBorderWidth(1f); dataSet.setBarBorderColor(Color.parseColor("#3F51B5")); dataSet.setBarBorderRadius(20f); // 刷新界面 barChart.invalidate(); ``` 在上面的示例代码中,我们设置了一个数据集合,包含了 5 个柱状图的数据(横坐标分别是 0 到 4),并设置了柱状图的样式,最后调用 invalidate() 方法刷新界面即可。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值