导读:网上关于AChartEngine绘制柱状图的介绍非差稀少,而AchartEngine它本身Api帮助文档写的非常的简略,给我们学习带来很大的不便。所以我在这里凭借个人的理解,以一个简单的柱状图的例子来解释Ach
废话不多说 关于android图表制作引擎AchartEngine的介绍我这里直接略去 大家想要了解它可以直接百度。
网上关于AChartEngine绘制柱状图的介绍非差稀少,而AchartEngine它本身Api帮助文档写的非常的简略,给我们学习带来很大的不便。所以我在这里凭借个人的理解,以一个简单的柱状图的例子来解释AchartEngine绘制柱图的一个过程,希望会对大家有所帮助。
首先简略的理解一下AchartEngine的API。
AchartEngine的提供的Api非常的简单,其中最重要的两个概念就是数据设置器(dataset)和所谓的描绘器(renderer)。顾名思义,数据设置器就是为我们提供了一系列对图表进行值传入的方法,而描绘器为我们提供了修改图表外观的一些方法。
本例结合简单的SQLite数据库表来建立一张柱状图
以下是我们要用到的数据库表的信息:
其实待会我们要用到的 只有_name和money两个字段,大家只要关注这两个字段即可
首先 我们打开本地数据库 得到游标:
接下去我们要声明一个数据设置器 和一个描绘器
其中getBarRenderer()函数是我们自定义的方法,用于初始化描绘器,其方法具体如下:网络编辑必备工具箱,网络编辑之家(www.editorsky.com)荣誉出品
文章格式化编辑
繁简体相互转换
文字挑错功能(1000个错别字词库)
可定制段前是否空格
只需鼠标点击
全傻瓜式操作
文字挑错实例:洁白无暇(洁白无瑕),黄梁美梦(黄粱美梦),美仑美奂(美伦美奂)
view sourceprint?01 //描绘器设置
02 public XYMultipleSeriesRenderer getBarRenderer() {
03 XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();
04 //通过SimpleSeriesDenderer设置描绘器的颜色
05 SimpleSeriesRenderer r = new SimpleSeriesRenderer();
06 r.setColor(Color.RED);
07 renderer.addSeriesRenderer(r);
08 setChartSettings(renderer);//设置描绘器的其他属性
09 return renderer; }
10 private void setChartSettings(XYMultipleSeriesRenderer renderer) {
11 renderer.setChartTitle( "个人收支表" );//设置柱图名称
12 renderer.setXTitle( "名单" );//设置X轴名称
13 renderer.setYTitle( "金额" );//设置Y轴名称
14 renderer.setXAxisMin(0.5);//设置X轴的最小值为0.5
15 renderer.setXAxisMax(5.5);//设置X轴的最大值为5
16 renderer.setYAxisMin(0);//设置Y轴的最小值为0
17 renderer.setYAxisMax(500);//设置Y轴最大值为500
18 renderer.setDisplayChartValues(true); //设置是否在柱体上方显示值
19 renderer.setShowGrid(true);//设置是否在图表中显示网格
20 renderer.setXLabels(0);//设置X轴显示的刻度标签的个数
21 }
22
接下去我们再来看数据设置器 view sourceprint?01 //数据设置
02 private XYMultipleSeriesDataset getBarDataset(Cursor cur) {
03 XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();
04 CategorySeries series = new CategorySeries( "本月金额");
05 //声明一个柱形图
06 //为柱形图添加值
07 while(cur.moveToNext())
08 series.add(cur.getDouble(cur.getColumnIndex("money")));
09 dataset.addSeries(series.toXYSeries());//添加该柱形图到数据设置列表
10 return dataset; }
11
现在我们一张简单图表就建立好了,但是我们会发现我们并没有用到_name这个字段,所以为了让X轴上面的刻度标签显示为_name这个字段中的值,我们需要写这样一段代码: view sourceprint?1 cur.moveToFirst();
2 int count=1;
3 do{
4 renderer.addTextLabel(count,cur.getString(cur.getColumnIndex("_name)));
5 count++;
6 }while(cur.moveToNext)
7
另外需要注意的是 在初始化描绘器的时候一定要加上renderer.setXLabels(0); 现在大功告成 ,我们再为这个Activity添加一个跳转图表的Intent就完成了 view sourceprint?1 Intent intent = ChartFactory.getBarChartIntent
2 (this , dataset, renderer, Type.DEFAULT );
3
效果如图:
- 大小: 29.3 KB
- 大小: 10.9 KB
分享到:
相关推荐
安卓图表引擎AChartEngine(六)-框架源码结构图.pdf
NULL 博文链接:https://iaiai.iteye.com/blog/1783716
AChartEngine 是一个安卓系统上制作图表的框架,使用简单,功能强大,目前它支持如下的图表类型:line chart (折线图),area chart (面积图;分区图,对比图),scatter chart ( 散点图),time chart (时间图;进度表),bar...
本项目是一个有大量中文注释版的AChartEngine图标引擎源码,AChartEngine 是一个安卓系统上制作图表的框架,目前它支持如下的图表类型:range (high-low) bar chart (范围条形图)、dial chart / gauge (拨号盘/压力表...
本项目是一个有大量中文注释版的AChartEngine图标引擎源码,AChartEngine 是一个安卓系统上制作图表的框架,目前它支持如下的图表类型:range (high-low) bar chart (范围条形图)、dial chart / gauge (拨号盘/压力表...
基于achartengine双Y轴动态图表Android源码,画的是折线图随x轴移动并实时更新数据,当然也可以弄成别的图,长时间运行内存不会溢出,WHO用WHO开心
Android AChartEngine1.0 源码
AChartEngine是一个针对Android程序开发的开源图表生成类库。支持以下几种图表类型:折线图 区域图 点图 柱状图 饼状图....
achartengine的jar包,用于Android图表开发的导入
achartengine 库的源代码,省得你去google source上拖了。包含完整的svn信息。最新一次提交是R569 2014.916 可以通过提交记录回溯到1.1.0跟1.2.0等版本。 注意,这是库的源代码,不是demo或者例子的源代码!
achartengine引擎的中文注释图表是一个有大量中文注释版的AChartEngine图标引擎源码,AChartEngine 是一个安卓系统上制作图表的框架,目前它支持如下的图表类型:range (high-low) bar chart (范围条形图)、dial ...
专门用于绘制Android平台上各种图表
一个基于Android的实时采集系统,需要对参数以实时曲线的形式显示,在网上找了找基于Android的图表工具以及源码,最终还是选取了AChartEngine来绘制,这个图表库用起来很是方便。下面将自己写的一个随机数的实时曲线...
AChartEngine是一个针对Android程序开发的开源图表生成类库。支持以下几种图表类型: 折线图 区域图 散点图 time chart 柱状图 饼状图 bubble chart doughnut chart
另外还有类似支付宝记账单的可以选择时间段展示的基于achartengine引擎的图表功能,这个功能也是在类似项目里不多见的。www.之前也介绍过很多关于记账理财的项目,不过都没有本项目完美,需要的可以在www.搜索“记账...
源码AChartEngine,AChartEngine 是一个安卓系统上制作图表的框架,目前它支持如下的图表类型:line chart (折线图),area chart (面积图;分区图,对比图),scatter chart ( 散点图),time chart (时间图;进度表),...
AChartEngine是一个针对Android程序开发的开源图表生成类库。支持以下几种图表类型: 折线图 区域图 散点图 time chart 柱状图 饼状图 bubble chart doughnut chart
自制柱形图表(Chart)效果源码,源码TestBarChart,话说最近需要做一个报表,于是想到了就achartengine这个高级货,可惜,这个东西太麻烦了(PS: 其实就是没看懂)。于是乎,本着偷懒的原则,自己就装模作样的写了一...
有些项目中需要做一些数据分析所以有时候需要用到数据图表,本工程是在国外牛人源码进行一些删减,留下基础的一些页面显示功能,适合初学者