帮学长毕业设计总结:AChartEngine创建图表的步骤
2015-04-27 00:32
309 查看
AChartEngine
首先要做的是一个用于展示支出、收入的饼状图,效果如下:
![](http://img.blog.csdn.net/20150427003531189?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvdTAxMTI0MDg3Nw==/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center)
之前没有接触过图表的绘制,经过实现这个功能了解并学习了AChartEngine,这是专门用于android绘制图表(饼状图、条形图)的工具库。目前最新的是achartengine-1.1.0.jar,下载地址:点击打开链接。
官方源码访问地址:点击打开链接
具体配置步骤如下:
(1)将下载得到的jar包粘贴到项目的libs文件夹下
(2)右键点击libs下的这个jar包,”buid path“-->"Add to build path",设置构建路径。添加完后会在引用的库中显示该jar包
(3)在AndroidManifest.xml中配置jar包中的一个activity, org.achartengine.GraphicalActivity,好像是绘图要调用他
<activityandroid:name="org.achartengine.GraphicalActivity"/>
这样配置就结束了。
接下来是如何绘制饼状图表:
(1)创建绘图用的颜色数组: int[] colors = new int[] { Color.RED, Color.YELLOW,
Color.BLUE,Color.GREEN};
(2)创建一个DefaultRenderer方法,用于创建一个Renderer渲染器,其实就相当于一个画板;在里面再创建SimpleSeriesRenderer对象,就是画笔。设定画笔颜色后把画笔加入画板。
需要注意:
设置画笔颜色时setColor(color[i])的参数color[i]不要超出第一步创建时的大小,否则会报错。当数据增多时调用自定义颜色,
categorySeries, renderer); //添加到响应的布局中 ll.addView(chartView);
这样就完成了图表的创建
首先要做的是一个用于展示支出、收入的饼状图,效果如下:
之前没有接触过图表的绘制,经过实现这个功能了解并学习了AChartEngine,这是专门用于android绘制图表(饼状图、条形图)的工具库。目前最新的是achartengine-1.1.0.jar,下载地址:点击打开链接。
官方源码访问地址:点击打开链接
具体配置步骤如下:
(1)将下载得到的jar包粘贴到项目的libs文件夹下
(2)右键点击libs下的这个jar包,”buid path“-->"Add to build path",设置构建路径。添加完后会在引用的库中显示该jar包
(3)在AndroidManifest.xml中配置jar包中的一个activity, org.achartengine.GraphicalActivity,好像是绘图要调用他
<activityandroid:name="org.achartengine.GraphicalActivity"/>
这样配置就结束了。
接下来是如何绘制饼状图表:
(1)创建绘图用的颜色数组: int[] colors = new int[] { Color.RED, Color.YELLOW,
Color.BLUE,Color.GREEN};
(2)创建一个DefaultRenderer方法,用于创建一个Renderer渲染器,其实就相当于一个画板;在里面再创建SimpleSeriesRenderer对象,就是画笔。设定画笔颜色后把画笔加入画板。
<pre name="code" class="java"> protected DefaultRenderer buildCategoryRenderer(int[] colors, List<Tb_outaccount> list) { //创建一个渲染器对象 DefaultRenderer renderer = new DefaultRenderer(); //list为要在图表中显示的数据集合 for (int i = 0; i < list.size(); i++) { //创建一个画笔 SimpleSeriesRenderer r = new SimpleSeriesRenderer(); if(list.size() < colors.length){ //设置画笔颜色 r.setColor(colors[i]); }else{ r.setColor(getRandomColor()); } //放入画板 renderer.addSeriesRenderer(r); } <span style="white-space:pre"> </span>/******下面是对画板的一些设置******/ //不显示底部说明 renderer.setShowLegend(false); //设置标签字体大小 renderer.setLabelsTextSize(20); //设置能缩放图表 renderer.setZoomButtonsVisible(true); renderer.setZoomEnabled(true); //设置能移动图表 renderer.setPanEnabled(false); //设置显示数据 renderer.setDisplayValues(true); // 设置饼图标题 renderer.setChartTitle("饼图标题"); renderer.setChartTitleTextSize(30); // renderer.setClickEnabled(true); return renderer; }
需要注意:
设置画笔颜色时setColor(color[i])的参数color[i]不要超出第一步创建时的大小,否则会报错。当数据增多时调用自定义颜色,
<span style="font-size:18px;"> r.setColor(getRandomColor())<span style="white-space:pre"> </span>getRandomColor()方法用于随机生成颜色,这里就不贴代码</span>
</pre><p></p><p><span style="font-family:Monaco,MonacoRegular,Courier New,monospace; color:#800080"><span style="font-size:15px; line-height:15px; white-space:pre; background-color:rgb(253,253,253)"><strong> (3)得到画笔后就该创建我们要展示的数据,CategorySeries,以(key,value)的方式添加将要在饼状图表上表示的分类及数据。</strong></span></span></p><p><span style="font-family:Monaco,MonacoRegular,Courier New,monospace; color:#800080"><span style="font-size:15px; line-height:15px; white-space:pre; background-color:rgb(253,253,253)"><strong></strong></span></span></p><pre name="code" class="java"><span style="white-space:pre">
<span style="white-space:pre"> </span>//得到画板,里面装了各种颜色的画笔 DefaultRenderer renderer = buildCategoryRenderer(colors,list); //创建数据集合 CategorySeries categorySeries = new CategorySeries("Vehicles Chart"); String type; int money; Tb_outaccount outaccount; for (int i = 0; i < list.size(); i++) { outaccount= list.get(i); type = outaccount.getType(); money = (int) outaccount.getMoney(); //往数据集合中添加分类及金额 categorySeries.add(type, money); } <pre name="code" class="java"><span style="white-space:pre"> </span>//ChartFactory.getPieChartView(context, categorySeries, renderer),返回一个饼状图View,参数为上下文、数据、画板GraphicalView chartView = ChartFactory.getPieChartView(context,
categorySeries, renderer); //添加到响应的布局中 ll.addView(chartView);
这样就完成了图表的创建
相关文章推荐
- 帮学长毕业设计总结:AChartEngine创建图表的步骤
- AchartEngine 统计图表开发总结
- AchartEngine 统计图表开发总结
- Android中图表AChartEngine学习使用与例子
- aChartEngine图表显示(1)
- Android图表引擎AChartEngine——Dataset和Render参数介绍
- android绘图 报表----aChartEngine图表显示(1)
- 图表控件,官方AchartEngine控件学习
- C#创建基本图表(Chart Controls)
- java ChartFactory 创建柱形图表图
- aChartEngine图表显示(饼图、柱状图、折线图)
- aChartEngine图表显示
- 这里总结一下collection cell的三种创建方式的相关步骤,原形cell,xib,代码;还有对collection view的数据流flowlayout属性与collectionview的头底
- AChartEngine使用View显示图表
- 某android平板项目开发笔记----aChartEngine图表显示(1)
- 某android平板项目开发笔记----aChartEngine图表显示(2)
- android开发图表achartengine之柱状图
- 创建图表托盘图标NotifyIconChart
- Android中图表AChartEngine学习使用与例子
- C#创建基本图表(Chart Controls)