`
msn877763580
  • 浏览: 83509 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Android绘制折线图

阅读更多

参考:http://www.cnblogs.com/youxilua/archive/2012/01/18/2325132.html

 

1、 使用Android  绘图工具库  AChartEngine

2、 绘制折线图的代码解析

关于工具库

AChartEngine是为 android 应用而设计的绘图工具库。目前该库的最新稳定版本是 0.7 ,支持绘制以下类型的图表 :

·  line chart

·  area chart

·  scatter chart

·  time chart

·  bar chart

·  pie chart

·  bubble chart

·  doughnut chart

·  range (high-low) bar chart

·  dial chart / gauge

·  combined (any combination of line, cubic line, scatter, bar, range bar, bubble) chart

·  cubic line chart

以上每种图表可以包含多个序列 可以将 X 轴以水平或垂直的形式显示,也支持很多自定义的特性 图表可以作为 Viewl 构建,也可以作为 Intent 构建 —— 这样可以被用于启动一个活动( Activity

 

关于折线图绘制

折线图的效果:


 

代码解释:

//每条曲线的名称

 String[] titles =  new  String[]{ "First" , "Second" };

  List  x =  new   ArrayList ();  //点集的x坐标 

  List  y =  new   ArrayList ();  //点集的y坐标 

  x.add( new   double []{1,3,5,7,9,11}) ;

  x.add( new   double []{0,2,4,6,8,10}) ;

  y.add( new   double []{3,14,5,30,20,25}) ;

  y.add( new   double []{18,9,21,15,10,6}) ;

曲线的名称和坐标点都以定义


以下的解释参照上图

步骤一:折线图的坐标集

首先应该创建 XYSeries对象 用于提供绘制的点集合的数据

XYSeries series =  new  XYSeries(titles[i]);  // 根据每条线的名称创建

将所有的坐标加入这个集合

series .add (xV[k], yV[k]);

XYMultipleSeriesDataset对象 用于 保存点集数据 ,包括每条曲线的X,Y坐标

// 用于数据的存放

XYMultipleSeriesDataset  dataset  =  new  XYMultipleSeriesDataset();

dataset .addSeries (series);

 

步骤二:折线图的样式集

定义每条曲线的颜色

  int [] colors =  new   int [] {Color. BLUE ,Color. GREEN };

定义每条曲线的点的形状

PointStyle [] styles = 

new   PointStyle []{ PointStyle . CIRCLE PointStyle . DIAMOND };

 

曲线图的格式,包括颜色,值的范围,点和线的形状等等  都封装在 XYSeriesRender对象中,再将XYSeriesRender对象封装在 XYMultipleSeriesRenderer 对象中

 XYSeriesRenderer r =  new  XYSeriesRenderer(); 

 r.setColor(colors[i]); 

 r.setPointStyle(styles[i]); 

 r.setFillPoints(fill); 

XYMultipleSeriesRenderer renderer =  new  XYMultipleSeriesRenderer(); 

renderer.addSeriesRenderer(r); 

设置折线图名称,坐标轴的名称,坐标轴的起点重点,坐标轴的颜色,坐标轴上数字的颜色

setChartSettings(renderer,  "Line Chart Demo" "X" "Y" , - 1 , 12, 0, 35 , Color. WHITE , Color. WHITE );

 

步骤三:显示折线图

View chart = ChartFactory. getLineChartView ( this , dataset, renderer);

setContentView(chart); 

 

源码见附件

  • 大小: 18 KB
  • 大小: 17.6 KB
分享到:
评论
12 楼 lovewendy 2015-04-13  
11 楼 qiao522600806 2013-10-11  
myf408 写道
我运行了,怎么报错啊,报错如下:
04-24 23:04:13.292: E/AndroidRuntime(12530): java.lang.NoClassDefFoundError: org.achartengine.model.XYMultipleSeriesDataset

10 楼 qiao522600806 2013-10-11  
看看
9 楼 king_tt 2013-10-06  
垃圾。运行不了,报错。
8 楼 贾叔叔 2013-09-11  
很好用,感谢楼主分享。7楼不知道遇到的什么问题,把他弄得这么生气……
7 楼 ljwshi2008 2013-01-04  
我只能说垃圾!导入jar包也是无法run起来,麻烦LZ以后别出来丢人现眼了!
6 楼 cffc1989101 2012-08-21  
下载来看看
5 楼 pro_ww2012 2012-07-22  
您好,我运行时提示程序意外终止,调试后发现如下问题:

XYMultipleSeriesDataset dataset = buildDatset(titles,x,y);

这行代码如果注释掉就能运行,楼主帮忙看下


        List y = new ArrayList(); //点集的y坐标
        x.add(new double[]{1,3,5,7,9,11});
        x.add(new double[]{0,2,4,6,8,10});
        y.add(new double[]{3,14,5,30,20,25});
        y.add(new double[]{18,9,21,15,10,6});
        //保存点集数据 ,包括每条曲线的X,Y坐标
        @SuppressWarnings("unused")
XYMultipleSeriesDataset dataset = buildDatset(titles,x,y);
        int[] colors = new int[] {Color.BLUE,Color.GREEN};//每条曲线的颜色
     
setContentView(R.layout.activity_main);
4 楼 milestogo 2012-07-16  
To:1,2,3楼
libs文件夹,右键 Build Path -> Use as source folder
3 楼 cbbs 2012-06-26  
我也是,导入包入去了
2 楼 Hn_lxw 2012-05-07  
也遇到楼上的问题,请教楼上如何解决的啊?
1 楼 myf408 2012-04-24  
我运行了,怎么报错啊,报错如下:
04-24 23:04:13.292: E/AndroidRuntime(12530): java.lang.NoClassDefFoundError: org.achartengine.model.XYMultipleSeriesDataset

相关推荐

    android 绘制折线图

    android 绘制折线图 绘制图形 也是从网上当的http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/1026/1848.html

    Android画折线图和柱状图

    总结来说,Android画折线图和柱状图主要依赖于第三方库如`MPAndroidChart`,它提供了丰富的功能和易用的API,使得在Android应用中创建动态、交互式的图表变得简单。通过学习和实践这些代码,开发者不仅可以掌握基本...

    Android 画折线图

    在Android平台上,绘制XY折线图是常见的数据可视化需求,特别是在开发数据分析或监控类应用时。Android Plot是一个强大的库,可以帮助开发者轻松实现这一功能。本文将深入探讨如何使用Android Plot来创建一个简单的...

    android 画折线图

    本篇将详细讲解如何在Android平台上实现画折线图的功能。 首先,我们需要了解Android中绘制图形的基本原理。Android提供了多种方式来绘制图形,其中最常用的是Canvas类,它提供了丰富的绘图方法,如drawLine()用于...

    android自定义折线图曲线图

    在Android开发中,自定义...总之,自定义折线图和曲线图是Android开发中的实用技能,涉及到图形绘制、数据处理和用户交互等多个方面。通过实践和学习,不仅可以提升Android开发能力,也能为应用的数据展示增添亮点。

    Android自定义折线图,可左右滑动,可点击

    首先,要创建这样一个自定义折线图,你需要了解Android的图形绘制原理,特别是使用Canvas和Paint类。Canvas是画布,用于绘制图形;Paint则包含了图形的样式和颜色等属性。在自定义视图(View)中,重写onDraw()方法...

    Android studio实现折线图

    首先,你需要选择一个图形库来帮助绘制折线图。在Android社区中,有许多成熟的图表库可供选择,如MPAndroidChart、AChartEngine等。这里我们以广泛使用的MPAndroidChart为例,它提供了丰富的图表类型,包括折线图,...

    android实现折线图

    在Android开发中,数据可视化是十分重要的,而折线图是一种常见的图表类型,常用于展示数据的变化趋势。本文将详细讲解如何使用Android的Canvas API来实现一个简单的折线图,并探讨如何对每个点进行图片替换,使图表...

    Android自定义折线图,可设置基准线,不同点颜色

    总的来说,Android自定义折线图是一项挑战性的任务,它涉及到图形绘制、布局适配、用户交互等多个方面。通过这个知识点的学习,开发者不仅可以创建美观的图表,还能提升对Android系统绘图机制的理解。在实际开发中,...

    android 绘制折线图(AChartEngine)Linechart 动态更新横轴为获取的当前时间

    总之,`AChartEngine`为Android开发者提供了一种简单有效的方式来绘制动态折线图。通过灵活地配置`Dataset`和`Renderer`,以及自定义时间标签,我们可以创建出与系统时间同步更新的动态图表。结合网络请求获取数据,...

    android_折线图相关源码

    在Android开发中,折线图是一种常见的数据可视化方式,它能清晰地展示数据的变化趋势,广泛应用于统计、分析和监控等场景。本资料提供的是一个关于Android折线图的源码实现,包括了布局文件、自定义折线图类、...

    Android自定义折线图(仿墨迹天气折线图)

    本文将深入探讨如何在Android中创建一个自定义的折线图,模仿墨迹天气应用中的折线图功能,包括设置折线的颜色、大小以及背景色等个性化定制。 首先,我们需要创建一个新的Java类,继承自`View`或`ViewGroup`。在...

    Android开发Canvas画折线图

    // 画出折线图的结束点 canvas.lineTo(width, height); canvas.strokeTo(0, height); // 可以添加额外的元素,如轴线、网格线和图例 drawXAxis(canvas, scaleWidth); drawYAxis(canvas, scaleHeight); // ...

    Android 实时动态折线图Linechart

    `Android 实时动态折线图Linechart`是一个专门用于在Android设备上创建动态、交互式的折线图的实现,它可以帮助开发者高效地展示随着时间变化的数据流。这个功能通常用于展示传感器数据、股市行情、健康监测等场景。...

    Android天气折线图

    绘制了七天最高温与最低温的天气折线图

    android自定义折线图

    在Android开发中,自定义视图是实现特定图形或交互效果的重要手段,而自定义折线图就是其中一种常见的需求。折线图是一种直观的数据可视化工具,常用于展示数据趋势和变化。本教程将深入探讨如何在Android平台上实现...

    android自定义折线图表格控件

    本主题聚焦于“android自定义折线图表格控件”,这是一个通过在Canvas上直接绘制来实现的自定义控件,它允许开发者展示多条线的数据,并提供了丰富的自定义选项。 首先,我们要理解Android中的自定义控件是如何工作...

    Android 简单折线图实现 MyLineChart.zip

    在Android开发中,数据可视化是十分重要的,尤其在展示趋势或者统计数据时,折线图是一种常用的图表类型。这个"Android简单折线图实现 MyLineChart.zip"文件提供了一个易懂的示例,帮助开发者了解如何在Android应用...

    Android折线图多条数据实时动态更新,控制折线图上数据的精度

    总结来说,利用MPAndroidChart在Android应用中创建折线图并实时更新多条数据是一项实用的功能。通过精细控制数据精度,可以提供更直观、高效的可视化体验。同时,还可以通过定制图表样式和交互性,提升用户的使用...

Global site tag (gtag.js) - Google Analytics