二话不说,先上图

核心代码如下:

  1. private void initLabelChat(View rootView) {
  2. NumberFormat nf = new DecimalFormat("#.# 小时");
  3.  
  4. final DefaultRenderer renderer = new DefaultRenderer();
  5. final CategorySeries series = new CategorySeries("");
  6.  
  7. LinearLayout layout = (LinearLayout) rootView
  8. .findViewById(R.id.pie_statistic_by_label);
  9. final GraphicalView chartView = ChartFactory.getPieChartView(
  10. getActivity(), series, renderer);
  11.  
  12. chartView.setOnClickListener(new View.OnClickListener() {
  13. @Override
  14. public void onClick(View v) {
  15. SeriesSelection seriesSelection = chartView
  16. .getCurrentSeriesAndPoint();
  17. if (seriesSelection == null) {
  18. /*
  19. * Toast.makeText(getActivity(),
  20. * "No chart element selected", Toast.LENGTH_SHORT) .show();
  21. */
  22. } else {
  23. for (int i = 0; i < series.getItemCount(); i++) {
  24. renderer.getSeriesRendererAt(i).setHighlighted(
  25. i == seriesSelection.getPointIndex());
  26. }
  27. chartView.repaint();
  28. }
  29. }
  30. });
  31.  
  32. renderer.setClickEnabled(true);
  33. renderer.setPanEnabled(false);
  34. renderer.setDisplayValues(false);
  35.  
  36. layout.addView(chartView, new LayoutParams(700, 700));
  37.  
  38. renderer.setZoomButtonsVisible(false);
  39. renderer.setZoomEnabled(false);
  40. renderer.setDisplayValues(true);
  41. renderer.setShowLegend(false);
  42.  
  43. renderer.setLabelsTextSize(30f);
  44. renderer.setLabelsColor(Color.DKGRAY);
  45. renderer.setShowGrid(true);
  46. renderer.setAntialiasing(true);
  47.  
  48. series.add("样本1", 5);
  49.  
  50. SimpleSeriesRenderer seriesRenderer = new SimpleSeriesRenderer();
  51. seriesRenderer.setGradientEnabled(true);
  52. seriesRenderer.setChartValuesFormat(nf);
  53. seriesRenderer.setGradientStart(0, Color.rgb(0x04, 0xa3, 0xff));
  54. seriesRenderer.setGradientStop(0.8, Color.rgb(0x00, 0x89, 0xd8));
  55. seriesRenderer.setDisplayChartValues(false);
  56. renderer.addSeriesRenderer(seriesRenderer);
  57.  
  58. series.add("样本2", 8);
  59.  
  60. seriesRenderer = new SimpleSeriesRenderer();
  61. seriesRenderer.setGradientEnabled(true);
  62. seriesRenderer.setChartValuesFormat(nf);
  63. seriesRenderer.setGradientStart(0, Color.rgb(0xff, 0xb0, 0x0d));
  64. seriesRenderer.setGradientStop(0.8, Color.rgb(0xce, 0x97, 0x00));
  65. seriesRenderer.setDisplayChartValues(false);
  66. renderer.addSeriesRenderer(seriesRenderer);
  67.  
  68. series.add("样本3", 6);
  69.  
  70. seriesRenderer = new SimpleSeriesRenderer();
  71. seriesRenderer.setGradientEnabled(true);
  72. seriesRenderer.setChartValuesFormat(nf);
  73. seriesRenderer.setGradientStart(0, Color.rgb(0x00, 0xbc, 0x66));
  74. seriesRenderer.setGradientStop(0.8, Color.rgb(0x01, 0x80, 0x46));
  75. seriesRenderer.setDisplayChartValues(false);
  76. renderer.addSeriesRenderer(seriesRenderer);
  77.  
  78. series.add("样本4", 3);
  79.  
  80. seriesRenderer = new SimpleSeriesRenderer();
  81. seriesRenderer.setGradientEnabled(true);
  82. seriesRenderer.setChartValuesFormat(nf);
  83. seriesRenderer.setGradientStart(0, Color.rgb(0xff, 0x6e, 0xf6));
  84. seriesRenderer.setGradientStop(0.8, Color.rgb(0xff, 0x00, 0xde));
  85. seriesRenderer.setDisplayChartValues(false);
  86. renderer.addSeriesRenderer(seriesRenderer);
  87.  
  88. chartView.repaint();
  89. }
  1. 其实很简单,设置渐变开启,然后设置渐变颜色即可
  2.  
  3. seriesRenderer.setGradientEnabled(true);
    seriesRenderer.setGradientStart(0, Color.rgb(0x04, 0xa3, 0xff));
    seriesRenderer.setGradientStop(0.8, Color.rgb(0x00, 0x89, 0xd8));
  4. 其中还有一个设置饼图值的方法,需要先创建一个NumberFormat
  1. NumberFormat nf = new DecimalFormat("#.# 小时");
  2.  
  3. 然后调用下面的方法即可
  1. seriesRenderer.setChartValuesFormat(nf);
  1.  

Android AChartEngine 饼图渐变效果的更多相关文章

  1. android 使用AChartEngine 饼图的实现

    1.AChartEngine 简介 AChartEngine是为Android应用而设计的绘图工具库.可用于绘制多种图表,我使用的是achartengine-1.1.0.jar.ChartEngine ...

  2. Android achartengine统计图

    最近在安卓2.2上写个实时的监控程序,要用到统计图.从网上搜了下 Java4Less (http://java4less.com/charts/chart.php?info=android)     ...

  3. android实现文字渐变效果和歌词进度的效果

    要用TextView使用渐变色,那我们就必须要了解LinearGradient(线性渐变)的用法. LinearGradient的参数解释 LinearGradient也称作线性渲染,LinearGr ...

  4. android MPAndroidChart饼图实现图例后加数字或文本(定制图例)

    转载请注明:http://blog.csdn.net/ly20116/article/details/50905789 MPAndroidChart是一个非常优秀的开源图表库,MPAndroidCha ...

  5. Android AChartEngine 个性化设置

    AChartEngine的确是一个强大的图标引擎,但文档写得不是很详细,很多设置只能通过方法名推测和实际尝试,下面是一些自己在实际中遇到的需要设置的选项,常见的那些和通过方法名就能轻松猜到的就不赘述了 ...

  6. Android AChartEngine 去除折线图黑边

    通常使用AChartEngine画出的折线图,如果背景不是黑色,则会在折线图的坐标轴旁边出现黑边,如图所示: 试了好多设置,最后终于发现,去除黑边的设置是: mRenderer.setMarginsC ...

  7. android AChartEngine图标引擎

    AChartEngine 1.在androi开发中的时候很多时候是要用图表将数据直观的显示出来的,这里就要用到AChartEngine. XMultipleSeriesRenderer 是经常要用到的 ...

  8. Android 应用启动渐变效果

    /** * 应用程序启动类:显示欢迎界面并跳转到主界面 * @author liux (http://my.oschina.net/liux) * @version 1.0 * @created 20 ...

  9. android AChartEngine源代码

    昨天翻自己曾经下过的apache开源project项目,看到一个AChartEnginee看了一下自带的Demo才意识到这个东西的强大.立刻想把源代码down一份,在CSDN上有人挂5分让人下载,实在 ...

随机推荐

  1. CreateFile函数详解

    CreateFile函数详解 CreateFile The CreateFile function creates or opens the following objects and returns ...

  2. 【Learning Python】【第三章】表、元组、字典和集合

    表 表提供了类似数组的数据结构,它是可变的,可以增删改查 增: insert(下标,值),如果下标 > 表的长度,则插入到末尾:若 < 表头的下标,则插入到第一个 append / += ...

  3. Java(六)——抽奖系统

     总体思路: 将编号加入ArrayList动态数组中,利用集合的静态方法Collections.shuffle() 乱序集合中的元素从而获得随机数,remove删除已抽编号  代码如下: import ...

  4. 在RedHat上安装gcc,java 和 eclipse-rcp

    本文全是如何用rpm包在红帽子54上安装gcc,automake,java和eclipse等,不是源代码编译,请大家不要误会了. 其实通过rpm包安装东西很简单,麻烦的是有很多rpm是要根据顺序进行先 ...

  5. Linux使用mount挂载samba共享

    # 挂载smb使用读写777权限sudo mount -t cifs -o "rw,dir_mode=0777,file_mode=0777,username=winuser,passwor ...

  6. maven - 安装与配置

    最近在了解maven的相关东西,在网上查了一些资料,现在简单整理一下. 一.maven 安装 1.先检查JDK ,Maven是一个java工具,所以请确保jdk环境已经正确安装在你的机器上. 2.点击 ...

  7. C++ 箴言

    1.把C++当成一门新的语言学习: 2.看<Thinking In C++>,不要看<C++变成死相>: 3.看<The C++ Programming Language ...

  8. 条件随机场(CRF) - 1 - 简介(转载)

    转载自:http://www.68idc.cn/help/jiabenmake/qita/20160530618222.html 首先我们先弄懂什么是"条件随机场",然后再探索其详 ...

  9. 105 董婷婷 第二次Sprint总结

    总结: 第二次冲刺结束了,这次冲刺的主要任务是建立数据库.项目进行到现在也基本定型了,满满的成就感啊.经过一段时间的合作,团队成员间的默契大大提高,还有最后一次冲刺,队友们,加油哦!

  10. Surprise团队第一周项目总结

    Surprise团队第一周项目总结 团队项目 基本内容 五子棋(Gobang)的开发与应用 利用Android Studio设计一款五子棋游戏,并丰富其内涵 预期目标 实现人人模式:2个用户可以在同一 ...