hellocharts图表插件---饼状图

来源:互联网 发布:英孚网络课程怎么样 编辑:程序博客网 时间:2024/06/13 19:25

前期插件那些准备和折线图一样
hellocharts图表插件—折线图 - An_nA的博客 - CSDN博客 http://blog.csdn.net/an_nal/article/details/76147185
查看了一些大神的帖子,学习了很多:
HelloChart–PieChartView(饼图) - 简书 http://www.jianshu.com/p/1498ac6c9f92

弄出来的效果图为:

不废话,直接上代码了:
1.布局文件:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical"    android:layout_width="match_parent"    android:layout_height="match_parent">    <lecho.lib.hellocharts.view.PieChartView        android:id="@+id/piechart"        android:layout_width="wrap_content"        android:layout_height="wrap_content" >    </lecho.lib.hellocharts.view.PieChartView></LinearLayout>

2.activity代码:

public class PieChartActivity extends AppCompatActivity {    @BindView(R.id.piechart)    PieChartView piechart;    @Override    protected void onCreate(@Nullable Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_piechart);        ButterKnife.bind(this);        //为piechart设置属性        ViewGroup.LayoutParams layoutParams = piechart.getLayoutParams();        layoutParams.height = AppUtil.dp2px(this, 180) ;        layoutParams.width = AppUtil.getScreenWidth(this);        piechart.setLayoutParams(layoutParams);//设置宽高        piechart.setViewportCalculationEnabled(true);//设置饼图自动适应大小        piechart.setChartRotationEnabled(false);//设置饼图是否可以手动旋转       //实例化PieChartData对象        final PieChartData  pd = new PieChartData();        pd.setHasLabelsOutside(false);//设置饼图外面是否显示值        pd.setHasCenterCircle(true);//设置饼图中间是否有第二个圈        pd.setCenterCircleColor(getResources().getColor(R.color.colorWhite));//设置饼图中间圈的颜色        pd.setCenterCircleScale(0.7f);////设置第二个圈的大小比例        Typeface typeface = Typeface.create("typeface", Typeface.BOLD_ITALIC);//设置文本字体,BOLD_ITALIC粗斜体        pd.setCenterText1Typeface(typeface);        pd.setCenterText1Color(getResources().getColor(R.color.colorPrimary));        pd.setCenterText1FontSize(16);        //pd.setCenterText1("总投诉事项");        pd.setCenterText2Color(getResources().getColor(R.color.colorRed));        pd.setCenterText2FontSize(16);        pd.setValueLabelsTextColor(Color.BLACK);//设置显示值的字体颜色        //pd.setSlicesSpacing(int sliceSpacing);//设置数据间的间隙        //pd.setHasLabelsOnlyForSelected(true);//设置当值被选中才显示        //pd.hasLabelsOutside();        pd.setHasLabels(false);        pd.setValueLabelsTextColor(getResources().getColor(R.color.colorWhite));        //初始化饼图数据 new SliceValue(float value, int color).setLabel(String label)        final List<SliceValue> sliceList = new ArrayList<SliceValue>();        for( int i = 1; i <= 10 ; i++){            sliceList.add(new SliceValue( i,getResources().getColor(R.color.pie_normal)).setLabel( String.valueOf( i) + "没有名字"));        }        pd.setValues(sliceList);//为饼图添加数据        piechart.setPieChartData(pd);//为饼图设置数据        //将第一个不为0值默认选中()        SliceValue defaultValue = sliceList.get(0);        defaultValue.setColor(getResources().getColor(R.color.pie_selected));        if( defaultValue.getValue() < 0 ){            pd.setCenterText1("0 没有名字");            pd.setCenterText2((int) defaultValue.getValue() + "项");        }else{            pd.setCenterText1(String.valueOf(defaultValue.getLabel()));            pd.setCenterText2((int) defaultValue.getValue() + "项");        }        piechart.startDataAnimation();        //为饼图添加触屏相应事件        piechart.setOnValueTouchListener(new PieChartOnValueSelectListener() {            @Override            public void onValueSelected(int i, SliceValue sliceValue) {                for (int j = 0; j < sliceList.size(); j++) {                    if (i == j) {                        sliceList.get(j).setColor(getResources().getColor(R.color.pie_selected));                    } else {                        sliceList.get(j).setColor(getResources().getColor(R.color.pie_normal));                    }                }                pd.setCenterText1(String.valueOf(sliceList.get(i).getLabel()));                pd.setCenterText2((int) sliceList.get(i).getValue() + "项");                piechart.startDataAnimation();            }            @Override            public void onValueDeselected() {            }        });    }}
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 老婆非让我睡她妈视频 真实儿曰亲妈视频观看 单身儿子单身妈 儿子再用点力妈要飞了中文 在上海陪读初三的儿子 加油儿子妈要流了txt 啊儿子深点妈要来了txt 儿子上来妈教你的故事 儿子在快一点妈要飞了视频 单身妈喜欢找儿子 中国家庭毋HH伦s线播放普通话 中国家庭真实毋HH伦s线播放 儿子你快点搞你爸要回来吗 儿子快点你爸回来了嗯 儿子你搞快点你爸要回来啦文字 快点你爸马上就回来了视频 儿子你搞快点你爸要回来啦电影 儿子快拿出来你爸快回来了视频 儿子你要高就快点你爸回来了电影 儿子你要就快点你爸要回来了小说 儿子 快点妈要来了漫画 你快点啊你爸快回来了视频 儿子快点你爸快回来了在哪能看 儿子搞快点你爸要回来了短文 儿子你快停下你爸要醒了视频 儿子用点力妈 儿子深一点用点力阅读 你要搞就快点你爸快回来了视频 试衣间深一点用点力视频 儿子深一点用点力阅读张研 儿子你用点力全文阅读 啊快一点啊用点力啊视频 儿子再用点力妈要飞了视频 中国真实的母教子视频 四川单亲妈教子性知识 52岁全程落脸视频 我尝到了母爱的滋味开头 我尝到了母爱的滋味txt 我尝到了母爱的甜蜜400 真实母教子视频 我尝到了母亲的滋味400