AndroidMpAndroidchart使用流程和坑--饼状图

xiaoxiao2021-02-28  66

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; }

转载请注明原文地址: https://www.6miu.com/read-83988.html

最新回复(0)