某android平板项目开发笔记----aChartEngine图表显示(1)

简介:


前言

一个人开发就是蛋疼…坚持吧… 

android的数据报表显示

对于数据的可视化,之前,是想直接用Canvas 来画,不过,评估了一下,工作量挺大的,因为,是一个人开发,而且是从零开始,如果写一个Canvas 画报表的方法,太费时间了,于是,上网找了一下,果然被我找到了…

AchartEngine

http://code.google.com/achartengine

绘制的基础

很多,使用这个引擎的同学,大多,会被它提供的例子的给吓到,因为,太多参数了!到最后,都不知道看到那里去了,其实,仔细研究,这个引擎的使用是非常简单…()

首先,我们整理一下思路,一般绘制一个图表需要:如下图所示

从图中,我们可以看出,绘制一个图表我们其实,我们只需要理解三个概念

1,ChartFactory ,传入XYMutilpleSeriesRenderer,XYMutilpleSeriesDataset,然后,我们只需用getXXXChartIntent(Context context,XYMutilpleSeriesRenderer,XYMutilpleSeriesDataset,)方法就可以进行图表的显示

2,XYMutilpleSeriesRenderer 用于进行绘制的设置,添加的XYSeriesRender对象,用于定义绘制的点集合设置,注意数量要和XYMutilpleSeriesDataset,添加的XYseries一致!!!

3,XYMutilpleSeriesDataset 用于数据的存放,添加的XYseries对象,用于提供绘制的点集合的数据

以下为一个小例子:
 


      
      
  1. public class ShowExamActivity extends Activity {     @Override    protected void onCreate(Bundle savedInstanceState) {         // TODO Auto-generated method stub         super.onCreate(savedInstanceState);         // 1, 构造显示用渲染图         XYMultipleSeriesRenderer renderer = new XYMultipleSeriesRenderer();         // 2,进行显示         XYMultipleSeriesDataset dataset = new XYMultipleSeriesDataset();         // 2.1, 构建数据         Random r = new Random();         for (int i = 0; i < 2; i++) {             XYSeries series = new XYSeries("test" + (i + 1));             // 填充数据             for (int k = 0; k < 10; k++) {                 // 填x,y值                 series.add(k, 20 + r.nextInt() % 100);             }             // 需要绘制的点放进dataset中             dataset.addSeries(series);         }         // 3, 对点的绘制进行设置         XYSeriesRenderer xyRenderer = new XYSeriesRenderer();         // 3.1设置颜色         xyRenderer.setColor(Color.BLUE);         // 3.2设置点的样式         xyRenderer.setPointStyle(PointStyle.SQUARE);         // 3.3, 将要绘制的点添加到坐标绘制中         renderer.addSeriesRenderer(xyRenderer);         // 3.4,重复 1~3的步骤绘制第二个系列点         xyRenderer = new XYSeriesRenderer();         xyRenderer.setColor(Color.RED);         xyRenderer.setPointStyle(PointStyle.CIRCLE);         renderer.addSeriesRenderer(xyRenderer);           // Intent intent = new LinChart().execute(this);         Intent intent = ChartFactory                 .getLineChartIntent(this, dataset, renderer);         startActivity(intent);       } } 

这里有一点要注意,我们是用内置的activity进行我们的图表的显示:所以,我们要在AndroiManifest里面添加一句


      
      
  1. <activity android:name="org.achartengine.GraphicalActivity" /> 

效果:
 

在稍后的一段时间里面,我会谈谈如何在xml布局文件里面嵌套我们的图表,有兴趣的朋友,可以进行关注


本文转自 liam2199 博客,原文链接: http://blog.51cto.com/youxilua/772616  如需转载请自行联系原作者

相关文章
|
Web App开发 安全 程序员
FFmpeg开发笔记(五十五)寒冬里的安卓程序员可进阶修炼的几种姿势
多年的互联网寒冬在今年尤为凛冽,坚守安卓开发愈发不易。面对是否转行或学习新技术的迷茫,安卓程序员可从三个方向进阶:1)钻研谷歌新技术,如Kotlin、Flutter、Jetpack等;2)拓展新功能应用,掌握Socket、OpenGL、WebRTC等专业领域技能;3)结合其他行业,如汽车、游戏、安全等,拓宽职业道路。这三个方向各有学习难度和保饭碗指数,助你在安卓开发领域持续成长。
220 1
FFmpeg开发笔记(五十五)寒冬里的安卓程序员可进阶修炼的几种姿势
|
Ubuntu Linux Android开发
termux+anlinux+Rvnc viewer来使安卓手机(平板)变成linux服务器
本文介绍了如何在Android设备上安装Termux和AnLinux,并通过这些工具运行Ubuntu系统和桌面环境。
2232 2
termux+anlinux+Rvnc viewer来使安卓手机(平板)变成linux服务器
|
Linux API 开发工具
FFmpeg开发笔记(五十九)Linux编译ijkplayer的Android平台so库
ijkplayer是由B站研发的移动端播放器,基于FFmpeg 3.4,支持Android和iOS。其源码托管于GitHub,截至2024年9月15日,获得了3.24万星标和0.81万分支,尽管已停止更新6年。本文档介绍了如何在Linux环境下编译ijkplayer的so库,以便在较新的开发环境中使用。首先需安装编译工具并调整/tmp分区大小,接着下载并安装Android SDK和NDK,最后下载ijkplayer源码并编译。详细步骤包括环境准备、工具安装及库编译等。更多FFmpeg开发知识可参考相关书籍。
404 0
FFmpeg开发笔记(五十九)Linux编译ijkplayer的Android平台so库
|
JavaScript 前端开发 Java
FFmpeg开发笔记(四十七)寒冬下安卓程序员的几个技术转型发展方向
IT寒冬使APP开发门槛提升,安卓程序员需转型。选项包括:深化Android开发,跟进Google新技术如Kotlin、Jetpack、Flutter及Compose;研究Android底层框架,掌握AOSP;转型Java后端开发,学习Spring Boot等框架;拓展大前端技能,掌握JavaScript、Node.js、Vue.js及特定框架如微信小程序、HarmonyOS;或转向C/C++底层开发,通过音视频项目如FFmpeg积累经验。每条路径都有相应的书籍和技术栈推荐,助你顺利过渡。
303 3
FFmpeg开发笔记(四十七)寒冬下安卓程序员的几个技术转型发展方向
|
编解码 安全 Ubuntu
Android Selinux 问题处理笔记
这篇文章是关于处理Android系统中SELinux权限问题的笔记,介绍了如何通过分析SELinux拒绝的日志、修改SELinux策略文件,并重新编译部署来解决权限问题,同时提供了一些SELinux的背景知识和实用工具。
927 0
|
Java 测试技术 开发工具
Android 笔记:AndroidTrain , Lint , build(1),只需一篇文章吃透Android多线程技术
Android 笔记:AndroidTrain , Lint , build(1),只需一篇文章吃透Android多线程技术
|
设计模式 缓存 前端开发
真的强!借助阿里技术博主分享的Android面试笔记,我拿到了字节跳动的offer
真的强!借助阿里技术博主分享的Android面试笔记,我拿到了字节跳动的offer
|
编解码 Android开发
android 创建平板电脑模拟器(转)
android 创建平板电脑模拟器(转)
346 2
|
Java API Android开发
技术经验分享:Android源码笔记——Camera系统架构
技术经验分享:Android源码笔记——Camera系统架构
213 0
|
算法 前端开发 Android开发
Android上实现柱状图表
Android上实现柱状图表
123 0

热门文章

最新文章