Android制作曲线、柱状图、饼形等图表——使用AChartEngine
之前在java开发中实现图表使用JFreeChar组件,最近有个小项目要求在Android端进行数据分析,如何实现图表呢?查了一下google提供了一个开源组件Achartengine非常好用,可实现绘制各种图形,完全满足了开发的需要,下面就说说如何使用。
| 一、准备工作 |
下载jar包
官网地址:http://code.google.com/p/achartengine/
网盘地址:http://pan.baidu.com/s/1EYhUe(含API文档,代码)
| 二、关键点说明——AchartEngined的使用 |
1、ChartFactory组件
ChartFactory组件提供getXXXX方法可获得不同的图形,例如
getBarChartView()柱状图
getPieChartView()饼图
getLineChartView(Context context ,XYMultipleSeriesDataset dataset, XYMultipleSeriesRenderer renderer)//折线图
getCubeLineChartView() //圆滑曲线图
2、CategorySeries和DefaultRenderer
这些方法一般都有三个参数依次为(不同图形还会有增加一些参数)
Context context,CategorySeries dataset, DefaultRenderer renderer
Context:表示应用上下文
CategorySeries:是图表的数据信息,包含构成的元素名称和值AchartEngined就是根据这个数据统计所占百分比的
DefaultRenderer:设置图片的样式,如设置每个元素的颜色、标题大小、背景颜色等
如绘制饼图,代码如下:
//创建CategorySeries 组件
CategorySeries series=new CategorySeries(“第一季度销售分析”);
series.add(“一月”,30000);
series.add(“二月”,40000);
series.add(“三月”,36000);
//创建DefaultRenderer组件
DefaultRenderer renderer = new DefaultRenderer(); renderer.setMargins(new int[] { 20, 30, 0 });//设置图例之间的间接单位为px
renderer.setLabelsTextSize(15);//设置标签的字体大小
renderer.setLegendTextSize(15);//设置图例的字体大小
SimpleSeriesRenderer r1 = new SimpleSeriesRenderer();
r1.setColor(Color.BLUE);
renderer.addSeriesRenderer(r1);//设置饼图颜色,一月份
SimpleSeriesRenderer r2 = new SimpleSeriesRenderer();
r1.setColor(Color.GREEN);
renderer.addSeriesRenderer(r2);//设置饼图颜色,二月份
SimpleSeriesRenderer r3 = new SimpleSeriesRenderer();
r1.setColor(Color.RED);
renderer.addSeriesRenderer(r3); //设置饼图颜色,三月份
//产生饼图
GraphicalView view=ChartFactory.getPieChartView(context, series, renderer);
3、GraphicalView
这些方法返回呈现图表的View——GraphicalView ,使用Layout的addView()方法添加到布局中即可显示,如:
GraphicalView view=ChartFactory.getPieChartView(context, series, renderer);
layout.addView(charView);
绘制其他图形步骤和饼图大同小异,大家可以结合API文档测试一下
| 三、实现案例 |
该案例包含绘制曲线、柱状图、饼形,进行了在AchartEngined组件基础上化封装,核心代码上述例子已经讲解,这里只提供下载地址
源码下载地址:http://pan.baidu.com/s/1eQlJJVG
出处:http://www.cnblogs.com/jerehedu/
本文版权归烟台杰瑞教育科技有限公司和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
Android制作曲线、柱状图、饼形等图表——使用AChartEngine的更多相关文章
- Android 图表绘制 achartengine 示例解析
一. AChartEngine 简介 1. 项目地址 AChartEngine 简介 : AChartEngine 是 Android 平台的图表开发库, 能绘制 折线图, 饼图, 气泡图, 柱状图, ...
- 【Android 应用开发】Android 图表绘制 achartengine 示例解析
作者 : 韩曙亮 转载请注明出处 : http://blog.csdn.net/shulianghan/article/details/38420197 一. AChartEngine 简介 1. 项 ...
- 安卓图表引擎AChartEngine(三) - 示例源码折线图、饼图和柱状图
折线图: package org.achartengine.chartdemo.demo.chart; import java.util.ArrayList; import java.util.Lis ...
- [Swift通天遁地]三、手势与图表-(13)制作美观简介的滚动图表:折线图表、面积图表、柱形图表、散点图表
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★➤微信公众号:山青咏芝(shanqingyongzhi)➤博客园地址:山青咏芝(https://www.cnblogs. ...
- [Android]使用Dagger 2依赖注入 - 图表创建的性能(翻译)
以下内容为原创,欢迎转载,转载请注明 来自天天博客:http://www.cnblogs.com/tiantianbyconan/p/5098943.html 使用Dagger 2依赖注入 - 图表创 ...
- Android手动画柱状图的例子
效果图如上,网上看到的例子,谨以此文记录一下,以后用到的地方再来翻翻. 核心技术是用Canvas和Paint画长方形. 源码地址:http://download.csdn.net/detail/abc ...
- 从零开始学Xamarin.Forms(三) Android 制作启动画面
原文:从零开始学Xamarin.Forms(三) Android 制作启动画面 Xamarin.Forms 在启动的时候相当慢,必须添加一个启动界面,步骤如下: 1.将启动画面的图片命名为:s ...
- 用ESP8266+android,制作自己的WIFI小车(Android 软件)
先说一下这篇文章里面的内容:TCP 客户端, 自定义对话框, 自定义按钮, ProgressBar竖直显示, 重力感应传感器,手机返回键新开启界面的问题(返回上次的界面),数据保存 软件的通信是配合 ...
- xamarin android制作圆角边框
xamarin android制作圆角边框 效果图如下: 关键代码: drawable文件夹新建shape_corner_down.xml <?xml version="1.0&quo ...
随机推荐
- 从DOS时代至移动互联网的技术路线回顾
从DOS时代至移动互联网的技术路线回顾 Normal 0 7.8 磅 0 2 false false false EN-US ZH-CN X-NONE /* Style Definitions */ ...
- LCT维护子树信息
有些题目,在要求支持link-cut之外,还会在线询问某个子树的信息.LCT可以通过维护虚边信息完成这个操作. 对于LCT上每个节点,维护两个两sz和si,后者维护该点所有虚儿子的信息,前者维护该点的 ...
- Questions(Updating)
有时候做题时会遇到一些未学习的零碎知识点,或存疑的疑惑 为防止遗忘,在此记录 1.复数除法与线性变换的关系 Accepted Codeforces 8D(2018.5.9) Definition: 复 ...
- iptables配置允许mysql远程访问
vi /etc/sysconfig/iptables iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCE ...
- 【洛谷】4317:花神的数论题【数位DP】
P4317 花神的数论题 题目背景 众所周知,花神多年来凭借无边的神力狂虐各大 OJ.OI.CF.TC …… 当然也包括 CH 啦. 题目描述 话说花神这天又来讲课了.课后照例有超级难的神题啦…… 我 ...
- 【BZOJ】1864: [Zjoi2006]三色二叉树
1864: [Zjoi2006]三色二叉树 Time Limit: 1 Sec Memory Limit: 64 MBSubmit: 1295 Solved: 961[Submit][Status ...
- elasticsearch实例讲解增删改查
1.首先弄明白四个概念 elasticsearch 关系型数据库 index 数据库 type 表 document 行 field 字段 如果刚一开始理解比较困难,那你就在心中默念100遍,10遍也 ...
- maven中跳过单元测试(转)
你可能想要配置 Maven 使其完全跳过单元测试. 可能你有一个很大的系统,单元测试需要花好多分钟来完成,而你不想在生成最终输出前等单元测试完成. 你可能正工作在一个遗留系统上面,这个系统有一系列的失 ...
- WindowsAPI详解——GetDriveType 获得逻辑驱动器的类型
http://flyxxtt.blogbus.com/logs/43181576.html 函数原型:UINT GetDriveType(LPCTSTR lpRootPathName) 参数lpRoo ...
- C#多线程编程之:lock使用注意事项
1.避免锁定public类型对象. 如果实例可以被公共访问,将出现lock(this)问题. 如有一个类MyClass,该类有一个Method方法通过lock(this)来实现互斥: 1 public ...