android使用achartengine 实现折线图
折线图的实现分为下边几个步骤:
1、第一步:数据的准备
XYMultipleSeriesDataset mDataset = new XYMultipleSeriesDataset();
XYSeries series1 = new XYSeries("第一条线");
series1.add(1, 7);
series1.add(2, 9);
series1.add(3,12);
series1.add(4, 5);
mDataset.addSeries(series1);
XYSeries series2 = new XYSeries("第二条线");
series2.add(1, 3);
series2.add(2, 8);
series2.add(3, 7);
series2.add(4, 4);
mDataset.addSeries(series2);
第二、步是描绘器的设置即XYMultipleSeriesRenderer的实现
这个主要实现的是坐标轴的绘制包括,字体大小,坐标轴的刻度的设置
例如 XYMultipleSeriesRenderer mRenderer = new XYMultipleSeriesRenderer(); //设置图表的X轴的当前方向 mRenderer.setOrientation(XYMultipleSeriesRenderer.Orientation.HORIZONTAL);
mRenderer.setXTitle("日期");//设置为X轴的标题
mRenderer.setYTitle("温度");//设置y轴的标题
mRenderer.setAxisTitleTextSize(20);//设置轴标题文本大小
mRenderer.setChartTitle("温度走势图");//设置图表标题
mRenderer.setChartTitleTextSize(30);//设置图表标题文字的大小
mRenderer.setLabelsTextSize(18);//设置标签的文字大小
mRenderer.setLegendTextSize(20);//设置图例文本大小
mRenderer.setPointSize(10f);//设置点的大小
mRenderer.setYAxisMin(0);//设置y轴最小值是0
mRenderer.setYAxisMax(15);
mRenderer.setYLabels(10);//设置Y轴刻度个数(貌似不太准确)
mRenderer.setXAxisMax(5);
mRenderer.setShowGrid(true);//显示网格
//将x标签栏目显示如:1,2,3,4替换为显示1月,2月,3月,4月
mRenderer.addXTextLabel(1, "1月");
mRenderer.addXTextLabel(2, "2月");
mRenderer.addXTextLabel(3, "3月");
mRenderer.addXTextLabel(4, "4月");
mRenderer.setXLabels(0);//设置只显示如1月,2月等替换后的东西,不显示1,2,3等
mRenderer.setMargins(new int[] { 20, 30, 15, 20 });//设置视图位置
第三步:折线图线条的设置
XYSeriesRenderer r = new XYSeriesRenderer();//(类似于一条线对象)
r.setColor(Color.BLUE);//设置颜色
r.setPointStyle(PointStyle.CIRCLE);//设置点的样式
r.setFillPoints(true);//填充点(显示的点是空心还是实心)
r.setDisplayChartValues(true);//将点的值显示出来
r.setChartValuesSpacing(10);//显示的点的值与图的距离
r.setChartValuesTextSize(25);//点的值的文字大小
// r.setFillBelowLine(true);//是否填充折线图的下方
// r.setFillBelowLineColor(Color.GREEN);//填充的颜色,如果不设置就默认与线的颜色一致
r.setLineWidth(3);//设置线宽
mRenderer.addSeriesRenderer(r);
XYSeriesRenderer rTwo = new XYSeriesRenderer();//(类似于一条线对象)
rTwo.setColor(Color.GRAY);//设置颜色
rTwo.setPointStyle(PointStyle.CIRCLE);//设置点的样式
rTwo.setFillPoints(true);//填充点(显示的点是空心还是实心)
rTwo.setDisplayChartValues(true);//将点的值显示出来
rTwo.setChartValuesSpacing(10);//显示的点的值与图的距离
rTwo.setChartValuesTextSize(25);//点的值的文字大小
// rTwo.setFillBelowLine(true);//是否填充折线图的下方
// rTwo.setFillBelowLineColor(Color.GREEN);//填充的颜色,如果不设置就默认与线的颜色一致
rTwo.setLineWidth(3);//设置线宽
mRenderer.addSeriesRenderer(rTwo);
第四步:生成图view
GraphicalView view = ChartFactory.getLineChartView(this, mDataset, mRenderer);
view.setBackgroundColor(Color.BLACK);
android使用achartengine 实现折线图的更多相关文章
- Android 使用 MPAndroidChart 实现折线图
Android 使用 MPAndroidChart 实现折线图 做Android项目的时候用到了折线图,不光折线图,还可能遇到很多的图表需要展示渲染,自己手画的话那好玩了,今天使用MPAndroidC ...
- Android图表引擎AChartEngine之折线图使用
最近在帮老师做一个课题,其中app端需要显示折线图以便直观地看数据波动,上网查了些资料后发现了这款图标引擎,另外感谢李坤老师的博客,帮助很大. 废话不多说,下面写代码. 一.AChartEngine是 ...
- Android AChartEngine 去除折线图黑边
通常使用AChartEngine画出的折线图,如果背景不是黑色,则会在折线图的坐标轴旁边出现黑边,如图所示: 试了好多设置,最后终于发现,去除黑边的设置是: mRenderer.setMarginsC ...
- AChartEngine 安卓折线图 柱形图等利器
http://www.eoeandroid.com/thread-548233-1-6.html 最近公司项目中要用到折线图,状态类型的图标要用到折线图,柱形图等,并且能够动态显示,在网上找了许多de ...
- achartengine之折线图
问题在文章的最后,大致说来就是折线图,如果点的个数大于3个的时候,不是所有的点都显示对应的值的,这是为什么呢,本来以为是小问题,但两天了还没找到原因) 将前两天的折线图代码做了小量修改,形成一个类似于 ...
- Android自定义控件 -Canvas绘制折线图(实现动态报表效果)
有时候我们在项目中会遇到使用折线图等图形,Android的开源项目中为我们提供了很多插件,但是很多时候我们需要根据具体项目自定义这些图表,这一篇文章我们一起来看看如何在Android中使用Canvas ...
- AChartEngine折线图实例
最近做项目要用到图表,在网上找相关的解决方案找了很久,搜到最多的就是这个框架,所以就开始研究下怎么使用,首先研究的就是折线图,如是做了一个实例. AChartEngine下载地址:http://cod ...
- Android - 折线图
使用Android的canvas,画折线图:代码为: package spt.view; import android.annotation.SuppressLint; import android. ...
- Android自定义折线图
老师布置了个作业:http://www.cnblogs.com/qingxu/p/5316897.html 作业中提到的 “玩了几天以后,大家发现了一些很有意思的现象,比如黄金点在逐渐地往下移动.” ...
随机推荐
- CountDownLatch源码分析
CountDownLatch.Semaphore(信号量)和ReentrantReadWriteLock.ReadLock(读锁)都采用AbstractOwnableSynchronizer共享排队的 ...
- Boost汉字匹配 -- 宽字符
原文链接:http://blog.csdn.net/sptoor/article/details/4930069 思路:汉字匹配,把字符都转换成宽字符,然后再匹配. 需要用到以下和宽字符有关的类: ...
- python开发_count()
python中的count()函数,从字面上可以知道,他具有统计功能 下面来看看具体的demo: 功能:读取一个文件'c:\\test.txt',统计出该文件中出现字符'a'的次数 #python o ...
- [转]android中drawable资源的解释及例子
原文链接: http://blog.csdn.net/wode_dream/article/details/38584693 文章中的内容参考Dev Guide中的Drawable R ...
- 使用pyplot和seaborn进行画图
pyplot的一些知识 matplotlab中的对象: matplotlib是面向对象的,在画图的时候我们了解一些对象,对我们画图是有帮助的.绘图的对象大致分为三层: backend_bases.Fi ...
- UIImagePickerController导航字体颜色和背景
创建UIImagePickerController // 创建图片选择器 UIImagePickerController *picker = [[UIImagePickerController all ...
- SilverLight学习笔记--使用WebClient实现通讯(一)(上传和下载字符串数据)
一.什么是WebClient类 1.基本知识 WebClient类是Mircsoft在.NET框架下提供的向 URI 标识的资源发送数据和从 URI 标识的资源接收数据的公共方法.通过这个类 ...
- 简单破解 Sencha Architect 2.2 (ExtJs Designer)
Sencha Architect 2是ExtJS和Sencha Touch的官方可视化IDE工具.最新版本是2.2,说是破解,其实是修改License来实现无限试用而已. 1.先下载安装官方软件,大约 ...
- MEF 导入(Import)和导出(Export)
前言: MEF不同于其他IOC容器(如:Castle)很重要的原因在于它使用了特性化编程模型(涉及到两个概念:“特性”和“编程模型”). 特性(Attribute):举例来说就是我们在开发过程中在类上 ...
- python笔记22-literal_eval函数处理返回json中的单双引号
前言 在做接口测试的时候,最常见的接口返回数据就是json类型,json类型数据实际上就是字串,通常标准的json格式是可以转化成python里面的对应的数据类型的 有时候开发返回的数据比较坑,不按常 ...