一个简单不复杂的图表控件ChartLibs,目前仅仅提供三种图表控件:饼图、条形图和线性图.其展示效果

如下:

使用方法很简单,直接通过gradle导入ChartLibs依赖就可以,在build.gradle中添加如下代码:

allprojects {
repositories {
...
maven { url 'https://jitpack.io' } //maven地址
}
} dependencies {
compile 'com.github.fishly:ChartLibs:1.1' //依赖
}

如下简单介绍以下三种图表的使用。

饼图

饼图通过不同颜色来区别数据,也可通过自定义设置数据源颜色来指定显示颜色,使用滑动旋转选择功能来选择当前对应item,通过突出显示方式显示当前位置,图示如下:

可以通过如下代码设置数据源和添加结果监听:

//kotlin,java同样适用
val list:MutableList<PartModel> = mutableListOf()
list.add(PartModel(10f,"one","0"))
list.add(PartModel(30f,"two","1"))
list.add(PartModel(10f,"three","2"))
list.add(PartModel(90f,"four","3"))
list.add(PartModel(10f,"five","4"))
list.add(PartModel(50f,"six","5"))
pieChart.setList(list) //设置数据源 pieChart.onSelectedListener=object : OnSelectedListener{ //选择回调
override fun onSelectedListener(index: Int, partModel: PartModel) {
view.text_view.text="${partModel.value}"
} }

条形图

仿照小米运动的展示控件,同样也是一个选择控件,可通过左右滑动来选择当前显示项,被选项目的底部文字和柱状高亮。图示显示效果如下:

可以通过如下代码设置数据源和添加结果监听:

val list:MutableList<PartModel> = mutableListOf()
list.add(PartModel(10f,"one","0"))
list.add(PartModel(30f,"two","1"))
list.add(PartModel(10f,"three","2"))
list.add(PartModel(90f,"four","3"))
list.add(PartModel(10f,"five","4"))
list.add(PartModel(50f,"six","5"))
barChart.setList(list) //设置数据源
barChart.onSelectedListener=object : OnSelectedListener{ //选择回调
override fun onSelectedListener(index: Int, partModel: PartModel) {
view.text_view.text="${partModel.value}"
}
}

线性图

线性图是一种类似于支付宝账单数据显示的效果,不可滑动可以通过点击选择当前选项,选中内容突出显示一个包裹背景,背景大小自适应,且被选项间隔显示底部text(防止text内容过多),效果示意图如下:

可以通过如下代码设置数据源和添加结果监听:

val sums= mutableListOf<Float>(10f,30f,10f,90f,10f,50f)
val lables= mutableListOf<String>() lineChart.maxScore= sums.max() //设置最大值
lineChart.minScore=sums.min() //设置最小值
lineChart.monthCount=sums.size //设置大小
lineChart.monthText=lables //设置底部标签内容
lineChart.score=sums //设置对应Y轴数据 lineChart.onSelectedListener=object :OnSelectedListener{ //添加选者监听
override fun onSelectedListener(index: Int, partModel: PartModel) {
view.text_view.text="${partModel.value}"
}
}

图表控件内容后续会间断更新,还望支持!

Enjoytoday,EnjoyCoding

Android 图表控件的使用的更多相关文章

  1. 比achartengine更加强大的Android图表控件。

    比achartengine更加强大的图表控件MPAndroidChart. 详细使用及demo:http://www.see-source.com/androidwidget/detail.html? ...

  2. Android自定义控件:图形报表的实现(折线图、曲线图、动态曲线图)(View与SurfaceView分别实现图表控件)

    图形报表很常用,因为展示数据比较直观,常见的形式有很多,如:折线图.柱形图.饼图.雷达图.股票图.还有一些3D效果的图表等. Android中也有不少第三方图表库,但是很难兼容各种各样的需求. 如果第 ...

  3. 8.5折!图表控件TeeChart特价中...

    著名图表控件TeeChart去年除了在优势的.NET方面表现依旧出色外,还推出了通过Xamarin和MONO实现的Android,iOS和Mac OSX的跨平台方案,让C#开发者也能开发移动APP. ...

  4. 图表控件Anychart常见问题

    AnyChart控件是一款当前流行的数据可视化解决方案,使客户可以创建交互地.生动的图表.实时仪表和地图.同时支持Flash和HTML5显示,控件提供极好的视觉外观和配色方案能够使客户根据不同的需求设 ...

  5. Android 开源控件与常用开发框架开发工具类

    Android的加载动画AVLoadingIndicatorView 项目地址: https://github.com/81813780/AVLoadingIndicatorView 首先,在 bui ...

  6. ASP.NET Core MVC TagHelper实践HighchartsNET快速图表控件-开源

    ASP.NET Core MVC TagHelper最佳实践HighchartsNET快速图表控件支持ASP.NET Core. 曾经在WebForms上写过 HighchartsNET快速图表控件- ...

  7. 在AngularJS中的使用Highcharts图表控件

    一.Highcharts简介 Highcharts是一款非常好用的前端图表控件,正如其中文网介绍的那样:功能强大.开源.美观.图表丰富.兼容绝大多数浏览器的纯js图表库. 如果你的项目是基于jquer ...

  8. HighchartsNET快速图表控件-开源

    前言: HighchartsNET快速图表控件,基于Highcharts的asp.net web控件.只需几行代码你就能快速生成一个图表. 从此不再担心图表复杂.简单几行代码就可以搞定,节省大量工作时 ...

  9. HighChats图表控件显示精度小数点的方法

    相信大家对highchats这个图表控件并不陌生,最近在项目中用到它,但是某些字段需要显示为小数点,顾查找资料文档发现下面两个方式可以实现: 初始化时候添加如下两个参数 tooltip:{    fo ...

随机推荐

  1. iOS核心动画高级技巧-4

    8. 显式动画 显式动画 如果想让事情变得顺利,只有靠自己 -- 夏尔·纪尧姆 上一章介绍了隐式动画的概念.隐式动画是在iOS平台创建动态用户界面的一种直接方式,也是UIKit动画机制的基础,不过它并 ...

  2. IT兄弟连 HTML5教程 和页面布局有关的CSS属性

    使用DIV+CSS对网页进行标准化布局前,除了要掌握盒子模型,还要掌握定位和浮动两个比较重要的概念,它们可以控制在页面上排列和显示元素的方式.一个盒子是装内容的区块,如果多个盒子组合在一起使用,再通过 ...

  3. RabbitMQ 备份交换机(alternate-exchange)介绍

    RabbitMQ之备份交换机(alternate-exchange) 1.备份交换器,AlternateExchange(AE) 备份交换器是为了实现没有路由到队列的消息,声明交换机的时候添加属性al ...

  4. Windows服务安装批处理命令

    Install.bat: @echo off "%~dp0InstallUtil\InstallUtil.exe" "%~dp0DataSyncService.exe&q ...

  5. 小程序实现日期时间控件picker

    小程序自带的组件中有日期跟时间的picker,但就缺个日期时间picker组件,那没办法,只能自己弄一个,这个组件不是很难,比较难的地方是要根据不同年份(是否闰年)跟月份决定一个月里有多少天. 我直接 ...

  6. AVAssetDownloadURLSession

    NSURLSession 的子类,用于支持创建和执行资产下载任务的URL会话,主要是用来下载HLS资源内容的 AVAssetDownloadURLSession reference https://d ...

  7. MySQL Error Log 文件丢失导致The server quit without updating PID file启动失败的场景

    今天在做mysql sniff测试的时候,中间重启MySQL实例的过程中,出现了"The server quit without updating PID file"这个经典的错误 ...

  8. 升级python2.7至python3.7

    最近在centos7下执行命令时,出现以下提示: DEPRECATION: Python 2.7 will reach the end of its life on January 1st, 2020 ...

  9. bayaim——达梦数据库安装DM7-单实例-Centos7.txt

    bay——安装_达梦DM7-单实例-Centos7.txt IP:10.20.100.22 ---------------------------------------------1.下载 注意:要 ...

  10. linux 磁盘分区和挂载看这一篇就够了

    Linux fdisk 和 mount 命令操作指南,linux磁盘管理.新增磁盘.挂载新硬盘(linux运维入门) 首先列出文件系统的整体磁盘空间使用情况.可以用来查看磁盘已被使用多少空间和还剩余多 ...