Android图表类库:WilliamChart
WilliamChart是基于Views的Android图表类库,帮助开发者在Android应用中实现折线图、柱状图和堆叠柱状图。数值发生变化时图表也会以动画的效果发生变化。
At the moment it provides:
LineChartView
BarChartView
StackBarChartView
使用说明:
创建一个新的chart需要继承自ChartView的坐标轴,同时实现一些必要的方法。我觉的这些方法足以让你绘制出任何你想要的效果。
xml文件
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
< com.db.chart.view.ChartView android:layout_width = "match_parent" android:layout_height = "dp" ... chart:chart_shadowDx = "dp" chart:chart_shadowDy = "dp" chart:chart_shadowRadius = "dp" chart:chart_shadowColor = "color" chart:chart_fontSize = "dp" chart:chart_typeface = "typeface" chart:chart_axisBorderSpacing = "dp" chart:chart_axisThickness = "dp" chart:chart_axisTopSpacing = "dp" chart:chart_axisColor = "color" chart:chart_axisX = "boolean" chart:chart_label = "boolean" chart:chart_labelColor = "color" /> |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
|
// Customize labels chart.setLabels(NONE/OUTSIDE/INSIDE) chart.setLabelColor(color) chart.setFontSize(integer) chart.setTypeface(typeface) // Define grid chart.setGrid(paint) chart.setHorizontalGrid(paint) chart.setVerticalGrid(paint) // Show threshold line chart.setThresholdLine( float , paint) chart.setMaxAxisValue(integer, integer) chart.setStep(integer) chart.setTopSpacing(dimen) chart.setBorderSpacing(dimen) chart.setAxisX( boolean ) chart.show() // Update values of a given set chart.updateValues( int , array) // Notify chart about updated values chart.notifyDataUpdate() // Tooltip support chart.showTooltip(view) chart.dismissTooltip(view) |
LineChart(跟上面相同的部分用省略号)
1
2
3
|
< com.db.chart.LineChartView ... /> |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
|
LineChartView chartView= new LineChartView() LineSet lineSet = new LineSet() lineSet.addPoint( new Point(string, float ) // Style dots lineSet.setDots( boolean ) lineSet.setDotsColor(color) lineSet.setDotsRadius(dimen) lineSet.setDotsStrokeThickness(dimen) lineSet.setDotsStrokeColor(color) // Style line lineSet.setLineThickness(dimen) lineSet.setLineColor(color) // Style background fill lineSet.setFill( boolean ) lineSet.setFillColor(color) // Style type lineSet.setDashed( boolean ) lineSet.setSmooth( boolean ) chartView.addData(lineSet) |
BarChart & StackBarChart
1
2
3
4
5
|
< com.db.chart.BarChartView ... chart:chart_barSpacing = "dp" chart:chart_setSpacing = "dp" /> |
java代码
1
2
3
4
5
6
7
8
9
10
11
|
BarChartView chartView = new BarcChartView() barChart.setBarSpacing(dimen) barChart.setSetSpacing(dimen) barChart.setBarBackground( boolean ) barChart.setBarBackgroundColor(color) barChart.setRoundCorners(dimen) BarSet barSet = new BarSet() Bar bar = new Bar(string, float ) bar.setColor(color) barSet.addBar(bar) chartView.addData(barSet) |
Listener的设置
1
2
3
4
5
6
|
chart.setOnEntryClickListener( new OnEntryClickListener(){ @Override public void onClick( int setIndex, int entryIndex, Rect entryRect) { //Do things } }); |
动画
1
2
3
4
5
6
7
8
9
10
11
12
|
Animation anim = new Animation() anim.setDuration(integer) anim.setEasing(easingFunction) anim.setEndAction(runnable) // Animation overlap between entries anim.setOverlap( float ) // Animation starting point anim.setStartPoint( float , float ) // Include alpha transition anim.setAlpha( int ) // Starts animation chart.animate(animation) |
项目描述:Android library to create charts. — 查看更多内容...
问题列表: | ||
#69 | Set Dots missing | 由 douglasd3 2015-08-19 |
#61 | Not showing anything at all | 由 Ph1b 2015-08-16 |
#50 | Can I set YAxis Label to right? | 由 xu6148152 2015-06-07 |
#29 | Support CandleStickChart view | 由 Archinamon 2015-01-14 |
#28 | Consider support for pie charts | 由 tuliohmendes 2015-07-29 |
Android图表类库:WilliamChart的更多相关文章
- 美丽的Java图表类库
摘要 在使用java做后台站点的开发张,图表和报表功能都是不可或缺 的.本文推荐了8款最精彩实用的Java图表应用,大部分图表应用的功能都类似,主要在于界面的美观性和使用的灵活性上有一点高低. 正文 ...
- Android 图表
今天在群里有人提问Android的图表,在网上搜索了一下,在贴吧中看到的回答,说是Trinea整理的开源项目,不知道是不是博客上的Trinea. 将内容记录如下,以备需要时查看. GraphView ...
- 8个华丽而实用的Java图表类库
8个华丽而实用的Java图表类库 转 https://www.300168.com/yidong/show-2744.html 核心提示:学习Java的同学注意了!!! 学习过程中遇到什么问题或者 ...
- 5个最顶级jQuery图表类库插件-Charting plugin
转载: http://www.cnblogs.com/chu888chu888/archive/2012/12/22/2828962.html 作者:Leonel Hilario翻译:Terry li ...
- Android图表库MPAndroidChart(十四)——在ListView种使用相同的图表
Android图表库MPAndroidChart(十四)--在ListView种使用相同的图表 各位好久不见,最近挺忙的,所有博客更新的比较少,这里今天说个比较简单的图表,那就是在ListView中使 ...
- Android图表库MPAndroidChart(十三)——简约的底部柱状图
Android图表库MPAndroidChart(十三)--简约的底部柱状图 我们继续上一讲,今天还是说下柱状图,这个图的话应该是用的比较多的,所有拿出来溜溜,先看下效果 我们还是来看下基本实现 一. ...
- Android图表库MPAndroidChart(十二)——来点不一样的,正负堆叠条形图
Android图表库MPAndroidChart(十二)--来点不一样的,正负堆叠条形图 接上篇,今天要说的,和上篇的类似,只是方向是有相反的两面,我们先看下效果 实际上这样就导致了我们的代码是比较类 ...
- Android图表库MPAndroidChart(十一)——多层级的堆叠条形图
Android图表库MPAndroidChart(十一)--多层级的堆叠条形图 事实上这个也是条形图的一种扩展,我们看下效果就知道了 是吧,他一般满足的需求就是同类数据比较了,不过目前我还真没看过哪个 ...
- Android图表库MPAndroidChart(十)——散点图的孪生兄弟气泡图
Android图表库MPAndroidChart(十)--散点图的孪生兄弟气泡图 起泡图和散点图如出一辙,但是个人认为要比散点图好看一点,我们来看下实际的演示效果 这个和散点图的实现很相似,我们一起来 ...
随机推荐
- 使用junit测试用例
通常只会使用junit测试非main方法,在我眼里就是程序入口实现而已.今天,发现原来可以测试类. 针对mybatis练习.在需要测试的UserDaoImpl类上右键,新建一个junit case,位 ...
- CNN笔记
Deep Learning是全部深度学习算法的总称,CNN是深度学习算法在图像处理领域的一个应用. 转 http://blog.csdn.net/stdcoutzyx/article/details/ ...
- 音频文件解析(二):WAV格式文件波形绘制
解析WAV头部信息后,接下来就可以根据相关参数和DATA块数据绘制波形. 1.重新编码(转换为8bits,单声道数据) Public Function GetFormatData(ByVal pDat ...
- MySql LAST_INSERT_ID 【插入多条数据时】
LAST_INSERT_ID 自动返回最后一个 INSERT 或 UPDATE 操作为 AUTO_INCREMENT 列设置的第一个发生的值. 参考这里 The ID that was generat ...
- [Android] 环境配置之正式版Android Studio 1.0
昨天看见 Android Studio 1.0 正式版本发布了:心里挺高兴的. 算是忠实用户了吧,从去年开发者大会一开始出现 AS 后就开始使用了:也是从那时开始就基本没有用过 Eclipse 了:一 ...
- 一些sql二
1.说明:复制表(只复制结构,源表名:a 新表名:b) (Access可用)法一:select * into b from a where 1<>1(仅用于SQlServer)法二:sel ...
- ScrollView与ListView冲突解决
正 常来说,在ScrollView添加一个ListView后在真机上只会显示ListView的一行多一点,我也不理解为什么会这样,后来我把 ListView的layout_height改成400dip ...
- MVC之前的那点事儿系列(2):HttpRuntime详解分析(上)
文章内容 从上章文章都知道,asp.net是运行在HttpRuntime里的,但是从CLR如何进入HttpRuntime的,可能大家都不太清晰.本章节就是通过深入分析.Net4的源码来展示其中的重要步 ...
- C#通用类Helper整理
★前言 最近下载了tita_chou在CSDN上传的一个资源,是在工作中整理的C#帮助类,里面包含了很多实用的类,想到我之前收集过自己用到少的可怜的类,心生敬意啊.当粗略的查看了那个资源,发现 ...
- 获取PC或移动设备的所有IP地址
不论是PC还是移动设备,都有可能同时存在几个IP地址(如具有多块网卡),本文介绍怎样获得PC或移动设备的所有IP地址. // 获得所有IP地址 public static void get_ip(){ ...