Android图表应用分享
16lz
2021-12-04
Android图表应用分享
导读: 之前做app时就有图表开发的任务,这次做海通项目也有个饼图,所以分享下。
需要哪些准备
在gradle下引用
repositories {maven { url “https://jitpack.io” }}dependencies {compile ‘com.github.PhilJay:MPAndroidChart:v2.1.6’}
代码讲解
界面xml端
<com.github.mikephil.charting.charts.PieChart android:id="@+id/piechart" android:layout_width="600px" android:layout_height="300px" android:layout_centerHorizontal="true"/>
后台java端(解释加在注释里了)
X轴,Y轴
ArrayList yVals = new ArrayList<>(); //值坐标 ArrayList xVals = new ArrayList<>();//对应的Lable,可以理解成X轴 for (int i = 0; i < 6; i++) { xVals.add(""); yVals.add(new BarEntry(listSize.get(i), i)); }
数据集
PieDataSet pieDataSet = new PieDataSet(yVals, "资产总数");//创建饼图的一个数据集
饼图每个模块的颜色
int[] COLORFUL_COLORS = { ContextCompat.getColor(getActivity(), R.color.colorChartBlue), ContextCompat.getColor(getActivity(), R.color.colorChartYellow), ContextCompat.getColor(getActivity(), R.color.colorChartBlue_1), ContextCompat.getColor(getActivity(), R.color.colorChartPurple), ContextCompat.getColor(getActivity(), R.color.colorChartRed), ContextCompat.getColor(getActivity(), R.color.colorChartGray)}; pieDataSet.setColors(COLORFUL_COLORS); //设置成丰富多彩的颜色
点击饼图部分时动画
pieDataSet.setSelectionShift(0);//点击后延伸出来的长度
把x轴y轴数据填充到饼图
PieData piedata = new PieData(xVals, pieDataSet);//生成PieData piedata.setDrawValues(false); piechart.setData(piedata);//给PieChart填充数据
设置图标图例(这边不需要图例所以false)
piechart.getLegend().setEnabled(false);
设置相关文字
piechart.setCenterText("资产总数");//中间写的文字 piechart.setCenterTextColor(ContextCompat.getColor(getActivity(), R.color.tv_333));//设置中间文字的颜色 piechart.setCenterTextRadiusPercent(0.5f);//设置文字显示的角度,180横着,默认是竖着 piechart.setCenterTextSize(12f);//设置中心文字的字体大小 piechart.setCenterTextTypeface(null);//设置字体 piechart.setDrawCenterText(true);//中心字使能开关,false时中间无法显示文字 piechart.setDrawHoleEnabled(true);//基本同上 piechart.setHoleColor(ContextCompat.getColor(getActivity(), R.color.colorWhite)); piechart.setHoleRadius(60f); piechart.setDescription("");//设置描述文字
加载时的动画
piechart.animateXY(1000, 1000);
小结
通过饼图可以知道其他的柱状图,折线图等,大同小异
主要抓住X轴的数据集,Y轴的数据集,图表的数据集,图例,文字,图表的数据集
更多相关文章
- mybatisplus的坑 insert标签insert into select无参数问题的解决
- python起点网月票榜字体反爬案例
- Android(安卓)- Android(安卓)Studio 安装 及 设置
- Android(安卓)Auido(2)- AudioTrack to AudioFlinger
- Android(安卓)下使用 JSON 实现 HTTP 请求
- Android(安卓)基础总结:(十)ContentResolver
- Android(安卓)App开发基础篇—四大组件之ContentProvider
- Android之UI学习篇二:TextVeiw显示表情和跑马灯效果
- Android图形系统的分析与移植 -- 六、双缓冲framebuffer的实现