AndroidMPChart——BarChart
AndroidMPChart的获取
依赖:
Project 的build.gradle文件中添加
allprojects {repositories {maven { url 'https://jitpack.io' }}
}
然后在 module中的build,gradle 中添加
implementation 'com.github.PhilJay:MPAndroidChart:v3.0.3'
布局文件:
<com.github.mikephil.charting.charts.BarChartandroid:id="@+id/full_barChart"android:layout_width="match_parent"android:layout_height="wrap_content"/>
初始化BarChart:
//清除历史设置barChart.clear();//无数据时的显示文本barChart.setNoDataText("暂无内容");//无数据时设置数据为空barChart.setData(null);//设置是否缩放barChart.setScaleEnabled(false);/** 图表设置* *///背景颜色barChart.setBackgroundColor(Color.WHITE);//是否显示图表网格barChart.setDrawGridBackground(false);//是否显示背景阴影barChart.setDrawBarShadow(false);//设置是否高亮显示barChart.setHighlightFullBarEnabled(false);//设置是否显示描述barChart.getDescription().setEnabled(false);//设置是否显示边框barChart.setDrawBorders(false);//设置动画效果barChart.animateY(1000, Easing.EasingOption.Linear);barChart.animateX(1000, Easing.EasingOption.Linear);/*XY轴的设置*///x轴设置显示位置在底部XAxis xAxis = barChart.getXAxis();xAxis.setPosition(XAxis.XAxisPosition.BOTTOM);//第一个参数是X轴坐标的个数,第二个参数是 是否不均匀分布,true是不均匀分布xAxis.setLabelCount(2, false);//不显示网格线xAxis.setDrawGridLines(false);//不显示轴线xAxis.setDrawAxisLine(false);//设置为true当一个页面显示条目过多,X轴值隔一个显示一个xAxis.setGranularityEnabled(true);//设置最小间隔,防止当放大时,出现重复标签。xAxis.setGranularity(1f);//设置滑动//一个界面最少显示多少个点barChart.setVisibleXRangeMinimum(0);//一个界面最大显示多少个点,其余滑动显示barChart.setVisibleXRangeMaximum(6);//自定义x轴标签xAxis.setValueFormatter(new IAxisValueFormatter() {@Overridepublic String getFormattedValue(float value, AxisBase axis) {return "";}});//y轴//左y轴YAxis leftAxis = barChart.getAxisLeft();//右y轴YAxis rightAxis = barChart.getAxisRight();//保证Y轴从0开始,不然会上移一点leftAxis.setAxisMinimum(0f);//设置右y轴是否显示rightAxis.setEnabled(false);//是否显示y坐标轴上的刻度竖线,默认是trueleftAxis.setDrawAxisLine(false);//设置为true当一个页面显示条目过多,X轴值隔一个显示一个leftAxis.setGranularityEnabled(true);//设置最小间隔,防止当放大时,出现重复标签。leftAxis.setGranularity(1f);//设置y轴显示最大标签数leftAxis.setAxisMaximum(6);//第一个参数是X轴坐标的个数,第二个参数是 是否不均匀分布,true是不均匀分布leftAxis.setLabelCount(leftYLable, false);/*折线图例 标签 设置*/Legend legend = barChart.getLegend();legend = barChart.getLegend();//图例样式legend.setForm(Legend.LegendForm.NONE);//图例文本大小legend.setTextSize(12f);//图例文本颜色legend.setTextColor(Color.BLACK);//显示位置//垂直时位置legend.setVerticalAlignment(Legend.LegendVerticalAlignment.BOTTOM);//水平时位置legend.setHorizontalAlignment(Legend.LegendHorizontalAlignment.RIGHT);//方向legend.setOrientation(Legend.LegendOrientation.HORIZONTAL);//是否绘制在图表里面legend.setDrawInside(false);
设置数据:
ArrayList<BarEntry> entries = new ArrayList<>();BarEntry barEntry = null;// 数据结构BarDataSet barDataSet = null;// 代表一个柱状图for (int i = 0; i < list.size; i++) {/*** 此处还可插入Drawable对象,barEntry(float x, float y,Drawable icon)* 即可设置柱状图顶部的icon展示* */VtDateValueBean vtDateValueBean = list.get(i);//获取点对象float preValue = Float.parseFloat(vtDateValueBean.getPreValue());//获取y轴barEntry = new BarEntry(i, preValue);entries.add(barEntry);}//每一个BarDataSet代表一类柱状图barDataSet = new BarDataSet(entries, "柱状图");//设置柱状图颜色 (不同颜色)barDataSet.setColors(colorlist);//设置柱状图颜色 (统一颜色)barDataSet.setColor(Color.BLACK);//设置图例宽度barDataSet.setFormLineWidth(1f);//设置图例大小barDataSet.setFormSize(15.f);//不显示柱状图顶部值barDataSet.setDrawValues(true);//设置顶部值字体大小barDataSet.setValueTextSize(11f);//设置顶部值字体颜色 (不同颜色)barDataSet.setValueTextColors(colorlist);//设置顶部值字体颜色 (统一颜色)barDataSet.setValueTextColor(Color.BLACK);barDataSet.setHighlightEnabled(false);// //添加多个BarDataSet时
// ArrayList<IBarDataSet> dataSets=new ArrayList<>();
// dataSets.add(barDataSet);
// BarData data = new BarData(dataSets);BarData bardata = new BarData(barDataSet);// 格式化显示bardata.setValueFormatter(new IValueFormatter() {@Overridepublic String getFormattedValue(float value, Entry entry, int dataSetIndex, ViewPortHandler viewPortHandler) {DecimalFormat fnum = new DecimalFormat("##0.00");return fnum.format(value);}});//设置柱体宽度bardata.setBarWidth(0.08f);//设置数据barChart.setData(bardata);barChart.invalidate();
AndroidMPChart——BarChart相关推荐
- VTK:绘制BarChart条形图用法实战
VTK:绘制BarChart条形图用法实战 程序输出 程序完整源代码 程序输出 程序完整源代码 #include <vtkAxis.h> #include <vtkChartXY.h ...
- VTK:绘图之BarChart
VTK:绘图之BarChart VTK:绘图之BarChart 描述 代码 BarChart.cxx CMakeLists.txt VTK:绘图之BarChart 描述 本示例说明如何创建条形图. 代 ...
- 属性“dataProvider”有多个初始值设定项。(注意:“dataProvider”是“mx.charts.BarChart”的默认属性)。...
1.错误描写叙述 属性"dataProvider"有多个初始值设定项.(注意:"dataProvider"是"mx.charts.BarChart&q ...
- 数据源改变后,BarChart组件的运动效果.
showDataEffect属性. barSeries.xField 属性 barSeries.displayName 属性 示例: 代码: <?xml version="1.0&qu ...
- Android图表控件MPAndroidChart——BarChart实现多列柱状图以及堆积柱状图
目录 前言 1. 数据准备 1.1 数据来源 2. 图表展示 2.1 MPAndroidChart获取 2.2 数据对象获取 2.3 数据展示 3. 柱状图外观完善 3.1 去掉图表外框,描述内容以及 ...
- MPAndroidChart的详细使用——BarChart条形图组(三)
记录一下BarChart(条形图)的图组(多条数据)使用! 注:本人使用的版本是MPAndroidChart-v3.0.3(如若版本不同有某些方法更新,可在评论区留言,尽我所能帮你解决!) MPAnd ...
- MPAndroidChart的详细使用——BarChart条形图(二)
今天来记录一下BarChart(条形图)的详细使用(美化)! 注:本人使用的版本是MPAndroidChart-v3.0.3(如若版本不同有某些方法更新,可在评论区留言,尽我所能帮你解决!) MPAn ...
- MPAndroidChart使用(BarChart为例)
1.准备工作 1.1.引用到项目中 在你的项目的build.gradle文件中配置: allprojects { repositories { jcenter() maven { url " ...
- MPAndroidChart3使用详解4:BarChart(柱形图)
柱状图使用实例 >> 代码: private BarChart bc;@Overrideprotected void onCreate(Bundle savedInstanceState) ...
- BarChart 柱状图 实例
BarChart 第一步,创建数据集 定义:DefaultCategoryDataset dataset = new DefaultCategoryDataset(); 设值:dataset.addV ...
最新文章
- 趣图:如何假装自己是一个IT人?
- linux中resize的含义,linux的resize2fs命令
- Python框架篇之Django(Models的多表操作)
- pytorch入门——tensorboard,transforms,dataset,dataloader,model,train,test
- 【POJ2453】An Easy Problem
- MVC3学习 七 Razor使用、路由模块、框架自带校验
- 帆软高级函数应用之数组函数
- python界面实现点餐系统_餐厅点餐系统详细设计与系统实现
- FL studio 20简易入门教程 -- 第五篇 -- 乐器调制界面
- 管理者该如何思考团队建设
- eighth week(2)
- 服务器硬盘无法显示扩展卷,win10硬盘分区合并扩展卷没法点怎么解决_win10硬盘分区不能点扩展卷修复方法-win7之家...
- python 有放回随机抽取_Python 随机抽样
- Oracle数据库字段翻译
- 虚拟机VM利用U盘重装系统
- 怎么用计算机要微信,电脑端要实现“微信双开”功能,三种方法,简单实用!...
- 基于asp.net738房屋租赁管理系统
- Androidstudio检测不到夜深模拟器解决方法
- 量子涡轮服务器原理,纯mek用一个泵跑满涡轮——水冷聚变堆的搭建
- 双线性群简介与基本运算