Android AChartEngine 饼图渐变效果
二话不说,先上图

核心代码如下:
private void initLabelChat(View rootView) {
NumberFormat nf = new DecimalFormat("#.# 小时");
final DefaultRenderer renderer = new DefaultRenderer();
final CategorySeries series = new CategorySeries("");
LinearLayout layout = (LinearLayout) rootView
.findViewById(R.id.pie_statistic_by_label);
final GraphicalView chartView = ChartFactory.getPieChartView(
getActivity(), series, renderer);
chartView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
SeriesSelection seriesSelection = chartView
.getCurrentSeriesAndPoint();
if (seriesSelection == null) {
/*
* Toast.makeText(getActivity(),
* "No chart element selected", Toast.LENGTH_SHORT) .show();
*/
} else {
for (int i = 0; i < series.getItemCount(); i++) {
renderer.getSeriesRendererAt(i).setHighlighted(
i == seriesSelection.getPointIndex());
}
chartView.repaint();
}
}
});
renderer.setClickEnabled(true);
renderer.setPanEnabled(false);
renderer.setDisplayValues(false);
layout.addView(chartView, new LayoutParams(700, 700));
renderer.setZoomButtonsVisible(false);
renderer.setZoomEnabled(false);
renderer.setDisplayValues(true);
renderer.setShowLegend(false);
renderer.setLabelsTextSize(30f);
renderer.setLabelsColor(Color.DKGRAY);
renderer.setShowGrid(true);
renderer.setAntialiasing(true);
series.add("样本1", 5);
SimpleSeriesRenderer seriesRenderer = new SimpleSeriesRenderer();
seriesRenderer.setGradientEnabled(true);
seriesRenderer.setChartValuesFormat(nf);
seriesRenderer.setGradientStart(0, Color.rgb(0x04, 0xa3, 0xff));
seriesRenderer.setGradientStop(0.8, Color.rgb(0x00, 0x89, 0xd8));
seriesRenderer.setDisplayChartValues(false);
renderer.addSeriesRenderer(seriesRenderer);
series.add("样本2", 8);
seriesRenderer = new SimpleSeriesRenderer();
seriesRenderer.setGradientEnabled(true);
seriesRenderer.setChartValuesFormat(nf);
seriesRenderer.setGradientStart(0, Color.rgb(0xff, 0xb0, 0x0d));
seriesRenderer.setGradientStop(0.8, Color.rgb(0xce, 0x97, 0x00));
seriesRenderer.setDisplayChartValues(false);
renderer.addSeriesRenderer(seriesRenderer);
series.add("样本3", 6);
seriesRenderer = new SimpleSeriesRenderer();
seriesRenderer.setGradientEnabled(true);
seriesRenderer.setChartValuesFormat(nf);
seriesRenderer.setGradientStart(0, Color.rgb(0x00, 0xbc, 0x66));
seriesRenderer.setGradientStop(0.8, Color.rgb(0x01, 0x80, 0x46));
seriesRenderer.setDisplayChartValues(false);
renderer.addSeriesRenderer(seriesRenderer);
series.add("样本4", 3);
seriesRenderer = new SimpleSeriesRenderer();
seriesRenderer.setGradientEnabled(true);
seriesRenderer.setChartValuesFormat(nf);
seriesRenderer.setGradientStart(0, Color.rgb(0xff, 0x6e, 0xf6));
seriesRenderer.setGradientStop(0.8, Color.rgb(0xff, 0x00, 0xde));
seriesRenderer.setDisplayChartValues(false);
renderer.addSeriesRenderer(seriesRenderer);
chartView.repaint();
}
其实很简单,设置渐变开启,然后设置渐变颜色即可 seriesRenderer.setGradientEnabled(true);
seriesRenderer.setGradientStart(0, Color.rgb(0x04, 0xa3, 0xff));
seriesRenderer.setGradientStop(0.8, Color.rgb(0x00, 0x89, 0xd8)); 其中还有一个设置饼图值的方法,需要先创建一个NumberFormat
NumberFormat nf = new DecimalFormat("#.# 小时");
然后调用下面的方法即可
seriesRenderer.setChartValuesFormat(nf);
Android AChartEngine 饼图渐变效果的更多相关文章
- android 使用AChartEngine 饼图的实现
1.AChartEngine 简介 AChartEngine是为Android应用而设计的绘图工具库.可用于绘制多种图表,我使用的是achartengine-1.1.0.jar.ChartEngine ...
- Android achartengine统计图
最近在安卓2.2上写个实时的监控程序,要用到统计图.从网上搜了下 Java4Less (http://java4less.com/charts/chart.php?info=android) ...
- android实现文字渐变效果和歌词进度的效果
要用TextView使用渐变色,那我们就必须要了解LinearGradient(线性渐变)的用法. LinearGradient的参数解释 LinearGradient也称作线性渲染,LinearGr ...
- android MPAndroidChart饼图实现图例后加数字或文本(定制图例)
转载请注明:http://blog.csdn.net/ly20116/article/details/50905789 MPAndroidChart是一个非常优秀的开源图表库,MPAndroidCha ...
- Android AChartEngine 个性化设置
AChartEngine的确是一个强大的图标引擎,但文档写得不是很详细,很多设置只能通过方法名推测和实际尝试,下面是一些自己在实际中遇到的需要设置的选项,常见的那些和通过方法名就能轻松猜到的就不赘述了 ...
- Android AChartEngine 去除折线图黑边
通常使用AChartEngine画出的折线图,如果背景不是黑色,则会在折线图的坐标轴旁边出现黑边,如图所示: 试了好多设置,最后终于发现,去除黑边的设置是: mRenderer.setMarginsC ...
- android AChartEngine图标引擎
AChartEngine 1.在androi开发中的时候很多时候是要用图表将数据直观的显示出来的,这里就要用到AChartEngine. XMultipleSeriesRenderer 是经常要用到的 ...
- Android 应用启动渐变效果
/** * 应用程序启动类:显示欢迎界面并跳转到主界面 * @author liux (http://my.oschina.net/liux) * @version 1.0 * @created 20 ...
- android AChartEngine源代码
昨天翻自己曾经下过的apache开源project项目,看到一个AChartEnginee看了一下自带的Demo才意识到这个东西的强大.立刻想把源代码down一份,在CSDN上有人挂5分让人下载,实在 ...
随机推荐
- 微软Face API体验——人脸检测
微软推出了全新REST API,现在可免费获取密钥,大家可以赶快申请!申请地址:https://cn.projectoxford.ai/subscription 看了网站的API介绍,忍不住赶快体验一 ...
- linux tar 解压文件时指定文件名
linux解压文件时指定文件夹名称 wget -O mysql-5.6.15.tar.gz http://oss.aliyuncs.com/aliyunecs/onekey/mysql/my ...
- 使用Mybatis-Generator自动生成Dao、Model、Mapping代码
1.所需jar包 mybatis-generator-core-1.3.2.jar mybatis-generator-core-1.3.2.jar 可以去http://mvnrepository.c ...
- Html概要及示例(一)
Html 简介 Html 是一种超文本标记语言,标记往往成对出现,例如 段落标记<p> 层标记 <div> 以及 <marqueen>等等,标记繁多 但未必就要全 ...
- C# 属性和字段的区别
属性和字段的区别 在C#中,我们可以非常自由的.毫无限制的访问公有字段, 但在一些场合中,我们可能希望限制只能给字段赋于某个范围的值.或是要求字段只能读或只能写, 或是在改变字段时能改变对象的其他一些 ...
- "****" is not translated in zh, zh_CN.的解决方法
最近在开发一个app,要用到静默安装等一些小技术,但是引发了问题如下: 在Android SDK Tool r19之后, Export的时候遇到xxx is not translated in yyy ...
- myeclipse10.7破解成功 但 无法打war包 提示:securecrt alert:integrity ch
myeclipse10.7破解成功 但 无法打war包 提示:securecrt alert:integrity check error 找了好久才找到解决办法 http://download. ...
- js或者ext js获取返回值
由于前台业务需要在判断中发起ajax到后台,根据返回值校验是否通过 代码如下 关键点在于要将async关闭 设置成同步,这样才能接收到要返回的flag ...
- DNS记录类型介绍(A记录、MX记录、NS记录等)
DNS A记录 NS记录 MX记录 CNAME记录 TXT记录 TTL值 PTR值 建站名词解释:DNS A记录 NS记录 MX记录 CNAME记录 TXT记录 TTL值 PTR值 泛域名 泛解析 域 ...
- myeclipse打war包时,报错security alert integrity check error
今天在用myeclipse打包项目时,出现如下图的提示: 在网上查找了一下原因,主要是由于Jar包不符合所导致的.解决办法如下: 将com.genuitec.eclipse.export.wizard ...