首页 > 代码库 > AChartEngine 安卓折线图 柱形图等利器

AChartEngine 安卓折线图 柱形图等利器

http://www.eoeandroid.com/thread-548233-1-6.html

 

 

最近公司项目中要用到折线图,状态类型的图标要用到折线图,柱形图等,并且能够动态显示,在网上找了许多demo,基本上都是写死的数据,下面先让我们看看AChartEngine的介绍

AChartEngine 运行示例图 : 每个图表都需要一个数据集 (Dataset) 和 渲染器集合 (Renderer);

-- 数据集 : 又由许多数据组成,

-- 渲染器 : 也由不同的子渲染器组成,

-- 获取Activity 或 组件 : 图表工厂 (ChartFactory) 通过调用 数据集 (Dataset) 和 渲染器集合 (Renderer) 可以生成带图表的 GraphicalView 或者 GraphicalActivity;


/

       那么分析完毕,其实就主要用到两大类,一个是数据集,一个是渲染器

     AChartEngine是为Android应用程序的图表库。它目前支持以下图表类型:
线图
面积图
散点图
时间图
条形图
饼图
气泡图
圆环图
范围(高至低)条形图
拨号图/表压
合并(行,立行,散点图,酒吧,酒吧的范围,泡沫的任意组合)图
立体折线图

     项目中不是应用activity来现实的,这样会导致UI缓慢,我们通过获取组件 ,向组件渲染的方式,代码如下:

     如何把折线图嵌入到界面某个位置?
   可以利用ChartFactory类中很多的getXxxxView方法返回一个装着折线图的GraphicalView,然后通过位置View.addView(GraphicalView)之类的方法把折线图添加到你指定的控件处就行了。

  如果项目中的X轴需要有文字,这点怎么做到呢?查了一下API,API如下
  
addXTextLabel
public void addXTextLabel(double x, java.lang.String text)
Adds a new text label for the specified X axis value.
Parameters:
x - the X axis value
text - the text label

   (在工作中查API是个很好地习惯,英语不好也得逼自己一把,去看英文文档)
知道怎么用了,好,我们现在先实验一下,mRenderer.setXLabels(0);
                mRenderer.addXTextLabel(1, "国贸");
                mRenderer.addXTextLabel(2, "计算机");
                mRenderer.addXTextLabel(3, "音乐"); 
OK,让我们run一下。。。。
成功
因为项目中要求是从服务器获取坐标值,客户端做显示,根据服务器给的信息,加以判断,是折线图,还是饼状图的显示
现在发现有非常重要的两种数据,一个是坐标值,比如说 折线图 :X轴坐标,Y轴坐标,还有就是X轴的文字的显示

后期会写一个工具类,用于从服务器获取坐标值等,然后转化为所需要的数组,楼主会将总结及时更新 希望大家给予支持,如果代码中有需要修改的地方或者大家有更好的想法,欢迎提出
      
本主题由 菲儿1010 于 2014-10-11 13:58 审核通过
<ignore_js_op>
技术分享

折线图 饼图的研究demo.zip

 

2.78 MB, 下载次数: 26

AChartEngine 安卓折线图 柱形图等利器