以前没用过MPAndroidChart,为了方便学习查找,引用下别个大神的笔记。

其余文章索引: 
MPAndroidChart 教程:概述
MPAndroidChart 教程:开始 Getting Started(一)
MPAndroidChart 教程:与图表进行手势交互 Interaction with the Chart(二) 
MPAndroidChart 教程:坐标轴,X轴,Y轴,Labels(三) 
MPAndroidChart 教程:设置数据,设置颜色(四) 
MPAndroidChart 教程:数据格式器 ValueFormatter(五) 
MPAndroidChart 教程:图表的具体设置 Specific chart settings(六) 
MPAndroidchart 教程:图例 Legend(七)
MPAndroidChart 教程:动态和实时数据 Dynamic & Realtime Data(八) 
MPAndroidChart 教程:修改视窗 Modifying the Viewport(九)
MPAndroidChart 教程:动画 Animations(十) 
MPAndroidChart 教程:MarkerView(十一)
MPAndroidChart 教程:ChartData类,ChartData子类, DataSet类,DataSet子类(十二) 
时间仓促,难免有错误,有的话希望大家在评论中指出,谢谢。 
源码:范例代码在线查看或下载

一、MPAndroidChart 是什么?

MPAndroidChart 是 Android 一个强大且容易使用的图表库

  • 支持线状图、柱状图、散点图、烛状图、气泡图、饼状图和蜘蛛网状图
  • 支持缩放、拖动(平移)、选择和动画
  • 适用于 Android 2.2 ( API 8 ) 和以上

该图标库支持 跨平台 使用:Android 和 iOS

二、MPAndroidChart 有哪些特性?

  • 8种不同的图表类型  
  • 两轴缩放(支持触摸手势,两轴单独或同时的放缩) 
  • 拖 / 平移 / 抛(触摸手势)  
  • Combined-Charts 组合图表(线状、柱状、散点图等)   
  • 双轴(比如说有两个独立的Y轴数据)  
  • 画值 (draw values into the chart with touch-gesture)
  • 高亮显示值(我们可以自定义Popup-views来高亮显示我们选中的值) 
  • 多个 / 单独的轴  
  • 图保存到sd卡(图像或txt文件)  
  • 预定义的颜色模板  
  • Legends (自动生成,自定义)   
  • 自定义轴(x轴和y轴)   
  • 动画(建立x和y轴动画)
  • 限制线(比如提供附加信息、最大值 …)   
  • 完全自定义(paints、字体、legends、颜色、背景、手势、虚线 …)   
  • 平滑缩放和滚动 30.000 数据点(线状,柱状图表)

三、图表类型样例图

    • LineChart (with legend, simple design)

LineChart (with legend, simple design)

LineChart (cubic lines)

Combined-Chart (bar- and linechart in this case)

BarChart (with legend, simple design)

BarChart (grouped DataSets)

Horizontal-BarChart

PieChart (with selection, …)

ScatterChart (with squares, triangles, circles, … and more)

CandleStickChart (for financial data)

BubbleChart (area covered by bubbles indicates the value)

RadarChart (spider web chart)

四、使用方法

1. Gradle dependency (推荐,在Android Studio中使用很方便 )

在 build.gradle 添加下面的代码

 repositories {
maven { url "https://jitpack.io" }
} dependencies {
compile 'com.github.PhilJay:MPAndroidChart:v2.1.6'
}

2. 以 jar 文件形式使用

五、精彩使用案例

1. Phone Addiction

Google Play : “Phone Addiction” 应用介绍及下载

2. 车辆管理

Google Play : “车辆管理” 应用介绍及下载

2. Blutdruck Begleiter

Google Play : “Blutdruck Begleiter” 应用介绍及下载

3. 健康无穷大

Google Play : “健康无穷大” 应用介绍及下载

3. 其他

MPAndroidChart 教程的更多相关文章

  1. Android MPAndroidChart RadarChart (蜘蛛网图)

    最近项目涉及到这个统计图形,经过实现,记录下,防止忘记了. 1.Github地址:MPAndroidChart 官方使用RadarChart demo:RadarChartActivitry 2.使用 ...

  2. MPAndroidChart 3.0——LineChart(折线图)

    显示效果 MPAndroidChart每一种图表的基本使用方式都基本相同 了解一种图表的实现 参考项目源码其他的图表也就差不多哩 在布局文件中定义 <com.github.mikephil.ch ...

  3. MPAndroidChart Wiki(译文)~Part 2

    7. 填充数据 这一章节将讲解给各式各样的图表设置数据的方法. 7.1 LineChart(线形图) 想给图表添加数据,使用如下方法: public void setData(ChartData da ...

  4. MPAndroidChart实现LineChart(折线图)

    一.参照油管视频做法 1.引入依赖 新建Android工程,然后分别在build.gradle(Project:...)添加 maven { url 'https://jitpack.io' } 在b ...

  5. Angular2入门系列教程7-HTTP(一)-使用Angular2自带的http进行网络请求

    上一篇:Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数 感觉这篇不是很好写,因为涉及到网络请求,如果采用真实的网络请求,这个例子大家拿到手估计还要自己写一个web ...

  6. Angular2入门系列教程6-路由(二)-使用多层级路由并在在路由中传递复杂参数

    上一篇:Angular2入门系列教程5-路由(一)-使用简单的路由并在在路由中传递参数 之前介绍了简单的路由以及传参,这篇文章我们将要学习复杂一些的路由以及传递其他附加参数.一个好的路由系统可以使我们 ...

  7. Angular2入门系列教程5-路由(一)-使用简单的路由并在在路由中传递参数

    上一篇:Angular2入门系列教程-服务 上一篇文章我们将Angular2的数据服务分离出来,学习了Angular2的依赖注入,这篇文章我们将要学习Angualr2的路由 为了编写样式方便,我们这篇 ...

  8. Angular2入门系列教程4-服务

    上一篇文章 Angular2入门系列教程-多个组件,主从关系 在编程中,我们通常会将数据提供单独分离出来,以免在编写程序的过程中反复复制粘贴数据请求的代码 Angular2中提供了依赖注入的概念,使得 ...

  9. Angular2入门系列教程1-使用Angular-cli搭建Angular2开发环境

    一直在学Angular2,百忙之中抽点时间来写个简单的教程. 2016年是前端飞速发展的一年,前端越来越形成了(web component)组件化的编程模式:以前Jquery通吃一切的田园时代一去不复 ...

随机推荐

  1. 响应性web设计实战总结

    响应性web设计实战 响应性web设计的理念是:页面的设计与开发应当根据用户行为与设备环境(包括系统平台,屏幕尺寸,屏幕定向等)进行相应的响应及调整.具体的实践方式由多方面组成,包括弹性网格和布局,图 ...

  2. 大熊君大话NodeJS之------Buffer模块

    一,开篇分析 所谓缓冲区Buffer,就是 "临时存贮区" 的意思,是暂时存放输入输出数据的一段内存. JS语言自身只有字符串数据类型,没有二进制数据类型,因此NodeJS提供了一 ...

  3. 2015年12月12 Node.js实战(一)使用Express+MongoDB搭建多人博客

    序,Node是基于V8引擎的服务器端脚本语言. 基础准备 Node.js: Express:本文用的是3.21.2版本,目前最新版本为4.13.3,Express4和Express3还是有较大区别,可 ...

  4. 快速切换IP的批处理!

    内容如下: @echo off color 1A Title [SMART专用 IP设置V1.0] cls echo. echo SMART专用 IP设置V1.0 %date%%time% echo. ...

  5. HDU 2007

    /*杭电ACM ID:2007*/ #define _CRT_SECURE_NO_WARNINGS #include <stdio.h> int main() { int in1, in2 ...

  6. Mysql BLOB和TEXT类型

      BLOB是一个二进制大对象,可以容纳可变数量的数据.有4种BLOB类型:TINYBLOB.BLOB.MEDIUMBLOB和LONGBLOB.它们只是可容纳值的最大长度不同. A binary la ...

  7. Mac OS X 11以上系统的Rootless机制问题

    由于项目紧,系统一直停留在10版本,最近清闲之后,第一件事就是升级了系统,到11El Capitan版本. 本来想着随便升级了,可能有好玩的东东,结果好玩的木有看见,项目开发环境崩溃了,何其衰耶? 废 ...

  8. (原创)Activity启动模式之singleTask

    android中activity有四种启动模式 standard(默认):在同一个任务栈中可以有重复的activity,基本没什么限制 singleTop:只有当此activity在栈顶时,去创建它, ...

  9. Struts2中关于"There is no Action mapped for namespace / and action name"的总结

    今天在调试一个基础的Struts2框架小程序.总是提示"There is no Action mapped for namespace / and action name"的错误. ...

  10. exit()和_exit()

    进程就好比人一样有其生命,我们通过fork()函数来创建一个进程,那么我们又是如何来中止进程呢. 进程退出 1.在Linux中任何让一个进程退出 进程退出表示进程即将结束.在Linux中进程退出分为了 ...