某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  如需转载请自行联系原作者

相关文章
|
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开发知识可参考相关书籍。
983 0
FFmpeg开发笔记(五十九)Linux编译ijkplayer的Android平台so库
|
Web App开发 安全 程序员
FFmpeg开发笔记(五十五)寒冬里的安卓程序员可进阶修炼的几种姿势
多年的互联网寒冬在今年尤为凛冽,坚守安卓开发愈发不易。面对是否转行或学习新技术的迷茫,安卓程序员可从三个方向进阶:1)钻研谷歌新技术,如Kotlin、Flutter、Jetpack等;2)拓展新功能应用,掌握Socket、OpenGL、WebRTC等专业领域技能;3)结合其他行业,如汽车、游戏、安全等,拓宽职业道路。这三个方向各有学习难度和保饭碗指数,助你在安卓开发领域持续成长。
484 1
FFmpeg开发笔记(五十五)寒冬里的安卓程序员可进阶修炼的几种姿势
|
编解码 安全 Ubuntu
Android Selinux 问题处理笔记
这篇文章是关于处理Android系统中SELinux权限问题的笔记,介绍了如何通过分析SELinux拒绝的日志、修改SELinux策略文件,并重新编译部署来解决权限问题,同时提供了一些SELinux的背景知识和实用工具。
2137 0
|
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积累经验。每条路径都有相应的书籍和技术栈推荐,助你顺利过渡。
648 3
FFmpeg开发笔记(四十七)寒冬下安卓程序员的几个技术转型发展方向
|
Java API Android开发
技术经验分享:Android源码笔记——Camera系统架构
技术经验分享:Android源码笔记——Camera系统架构
499 0
|
Java 测试技术 开发工具
Android 笔记:AndroidTrain , Lint , build(1),只需一篇文章吃透Android多线程技术
Android 笔记:AndroidTrain , Lint , build(1),只需一篇文章吃透Android多线程技术
|
设计模式 缓存 前端开发
真的强!借助阿里技术博主分享的Android面试笔记,我拿到了字节跳动的offer
真的强!借助阿里技术博主分享的Android面试笔记,我拿到了字节跳动的offer
|
安全 Linux Android开发
FFmpeg开发笔记(十六)Linux交叉编译Android的OpenSSL库
该文介绍了如何在Linux服务器上交叉编译Android的FFmpeg库以支持HTTPS视频播放。首先,从GitHub下载openssl源码,解压后通过编译脚本`build_openssl.sh`生成64位静态库。接着,更新环境变量加载openssl,并编辑FFmpeg配置脚本`config_ffmpeg_openssl.sh`启用openssl支持。然后,编译安装FFmpeg。最后,将编译好的库文件导入App工程的相应目录,修改视频链接为HTTPS,App即可播放HTTPS在线视频。
675 3
FFmpeg开发笔记(十六)Linux交叉编译Android的OpenSSL库
|
存储 Java API
Android系统 文件访问权限笔记
Android系统 文件访问权限笔记
2529 1
|
Linux 编译器 Android开发
FFmpeg开发笔记(九)Linux交叉编译Android的x265库
在Linux环境下,本文指导如何交叉编译x265的so库以适应Android。首先,需安装cmake和下载android-ndk-r21e。接着,下载x265源码,修改crosscompile.cmake的编译器设置。配置x265源码,使用指定的NDK路径,并在配置界面修改相关选项。随后,修改编译规则,编译并安装x265,调整pc描述文件并更新PKG_CONFIG_PATH。最后,修改FFmpeg配置脚本启用x265支持,编译安装FFmpeg,将生成的so文件导入Android工程,调整gradle配置以确保顺利运行。
1226 1
FFmpeg开发笔记(九)Linux交叉编译Android的x265库

热门文章

最新文章