PieChart
借鉴博客https://github.com/PhilJay/MPAndroidChart
http://www.jianshu.com/p/587946813a78
柱状图可以详见:http://blog.csdn.net/androidwubo/article/details/72918612
组合图可以详见:http://blog.csdn.net/androidwubo/article/details/72922171
该项目的源码:https://github.com/Orion-wubo/orion
步骤:
1、引用(三种方式,不一一介绍了,看github)
2、根据需求选择相应的表
折线图 LineChart
条形图 BarChart
条形折线图 Combined-Chart
圆饼图 PieChart
雷达图 ScatterChart
K线图 CandleStickChart
泡泡图 BubbleChart
网状图 RadarChart
3、获取相应控件
mPieChart = (PieChart) findViewById(R.id.chart1);
4、设置图标
mPieChart.setUsePercentValues(true);//数据以百分比进行绘制
mPieChart.getDescription().setEnabled(false);//是否显示描述
mPieChart.setExtraOffsets(5, 10, 5, 5);//设置距离左上右下的位置
//设置中间文件--就是空心里面的文字
//mPieChart.setCenterText(generateCenterSpannableText());
//设置是实心还是空心,实心false,空心true
mPieChart.setDrawHoleEnabled(false);
mPieChart.setDrawCenterText(true);//中间是否可以添加文字,当为空心
mPieChart.setTransparentCircleColor(Color.WHITE);//透明圆的颜色
mPieChart.setTransparentCircleAlpha(110);//设置透明度0-255,默认100
mPieChart.setHoleRadius(58f);//半径
mPieChart.setTransparentCircleRadius(61f);//透明圆的半径
mPieChart.setRotationAngle(0);//设置初始的旋转角度
mPieChart.setRotationEnabled(true);// 触摸旋转
mPieChart.setHighlightPerTapEnabled(true);//true为点击高亮显示
//设置图标说明(这个通用)
//设置自定义mark(参考第二个博客)(可选内容)
// 输入标签样式(就是每一块的介绍的文字)
mPieChart.setEntryLabelColor(Color.WHITE);
mPieChart.setEntryLabelTextSize(12f);
5、设置数据 (从字面意思就可以理解了)
PieDataSet dataSet = new PieDataSet(entries, "");
dataSet.setColor(Color.BLACK);
dataSet.setSliceSpace(3f);
dataSet.setSelectionShift(5f);
dataSet.setYValuePosition(PieDataSet.ValuePosition.OUTSIDE_SLICE);
//数据和颜色
ArrayList<Integer> colors = new ArrayList<Integer>();
colors.add(rgb("#5e9de5"));
colors.add(rgb("#72e65f"));
colors.add(rgb("#f48741"));
colors.add(rgb("#6267e1"));
dataSet.setColors(colors);
PieData data = new PieData(dataSet);
data.setValueFormatter(new PercentFormatter());
data.setValueTextSize(11f);
data.setValueTextColor(Color.BLACK);
mPieChart.setData(data);
mPieChart.highlightValues(null);
//刷新
mPieChart.invalidate();
6、设置文字(可选)
//设置中间文字
private SpannableString generateCenterSpannableText() {
//原文:MPAndroidChart\ndeveloped by Philipp Jahoda
SpannableString s = new SpannableString("刘某人程序员\n我仿佛听到有人说我帅");
//s.setSpan(new RelativeSizeSpan(1.7f), 0, 14, 0);
//s.setSpan(new StyleSpan(Typeface.NORMAL), 14, s.length() - 15, 0);
// s.setSpan(new ForegroundColorSpan(Color.GRAY), 14, s.length() - 15, 0);
//s.setSpan(new RelativeSizeSpan(.8f), 14, s.length() - 15, 0);
// s.setSpan(new StyleSpan(Typeface.ITALIC), s.length() - 14, s.length(), 0);
// s.setSpan(new ForegroundColorSpan(ColorTemplate.getHoloBlue()), s.length() - 14, s.length(), 0);
return s;
}
Android MpAndroidchart使用流程和坑--饼状图
最新推荐文章于 2025-02-24 11:56:00 发布