19. ChartData子类

这篇wiki主要关注ChartData子类的具体介绍。至于此部分没有提及到的ChartData的子类,代表他们没有特性功能需要介绍。

BarData

方法 使用
setGroupSpace(float percent) 按照一个栏的总宽度的百分比设置不同数据集的条形组之间的空间.100%代表一个条形的宽度。默认为80%
isGrouped() 如果此数据对象分组(由多个DataSet组成),则返回true,否则返回false

ScatterData

方法 使用
getGreatestShapeSize() 返回此数据对象包含的所有ScatterDataSets的最大形状大小。

PieData

方法 使用
getDataSet() 返回包含的PieDataSet对象。PieData不能包含多个PieDataSet对象
setDataSet(PieDataSet set) 设置PieDataSet

BubbleData

方法 使用
setHighlightCircleWidth(float width) 设置当数据对象包含的所有BubbleDataSet对象处于突出显示状态时的环绕该气泡的圆的宽度。单位dp

CombinedData

该数据对象被设计为包含所有其他数据对象的实例。使用setData(…)方法提供此对象的数据。这仅用于CombinedChart。

public class CombinedData extends ChartData {

    // ...

    public CombinedData(List<String> xVals) { ... }

    public CombinedData(String[] xVals) { ... }

    public void setData(LineData data) { ... }

    public void setData(BarData data) { ... }

    public void setData(ScatterData data) { ... }

    public void setData(CandleData data) { ... }

    // ...
}

20. DataSet类(通用样式)

DataSet是如LineDataSet,BarDataSet等所有数据集类的基类。

public class LineDataSet extends DataSet { ...

DataSet代表一组或者一类在图表中归结在一起的数据条目集合。设计它的目的是为了将图表中的不同组数据进行逻辑分离。(比如线形图中的特定一条线,柱形图中的特定一组柱形)

以下提到的方法在DataSet类中实现,因此可用于所有子类。

20.1 数据样式

方法 使用
setValueTextColor(int color) 设置 DataSet 数据对象包含的数据的值文本的颜色
setValueTextColors(List colors) 设置一个颜色列表用于显示值
setValueTextSize(float size) 设置 DataSet 数据对象包含的数据的值文本的大小(单位是dp)
setValueTypeface(Typeface tf) 设置 DataSet 数据对象包含的数据的值文本的字体
setValueFormatter(ValueFormatter f) 为DataSet 数据对象包含的数据设置自定义的 ValueFormatter。更多关于ValueFormatter,请查阅此处
setDrawValues(boolean enabled) 启用/禁用 绘制所有 DataSet 数据对象包含的数据的值文本

以上方法同样适用于ChartData对象,只是操作结果针对的是其包含的所有的DataSet。


20.2 高亮

方法 使用
setHighlightEnabled(boolean enabled) 设置为true,允许通过点击高亮突出 ChartData 对象和其 DataSets
setDrawVerticalHighlightIndicator(boolean enabled) 启用/禁用纵向选中高亮指示线。如果禁用,指示线将不会被绘制
setDrawHorizontalHighlightIndicator(boolean enabled) 启用/禁用横向选中高亮指示线。如果禁用,指示线将不会被绘制

20.3 Getter/Convenience

方法 使用
contains(Entry entry) 检查此数据对象是否包含指定的Entry 。 注:这个相当影响性能,性能严峻情况下,不要过度使用。

21. DataSet子类(特定样式)

本章wiki专注于DataSet类的子类。此处未提及的DataSet的所有其他子类代表它们没有特定的增强功能。

21.1 Line-, Bar-, Scatter-, Bubble- & CandleDataSet

方法 使用
setHighLightColor(int color) 设置高亮颜色。不要忘记用getResources().getColor(…) 或者 Color.rgb(…)来解析颜色(或者使用Color.BLACK这种简单的方式)

21.2 Line-, Bar-, Scatter-, Candle- & RadarDataSet

方法 使用
setDrawHighlightIndicators(boolean enabled) 启用/禁用垂直和水平高亮指示线。调用setDrawVerticalHighlightIndicator(…)和setDrawHorizo​​ntalHighlightIndicator(…)进行单独配置
setHighlightLineWidth(float width) 设置高亮线(十字准线)的宽度。单位dp

21.3 Line- & RadarDataSet

方法 使用
setFillColor(int color) 设置用于填充线条表面的颜色
setFillAlpha(int alpha) 设置用于填充线条表面(0-255)的Alpha值(透明度),默认值:85,255 =完全不透明,0 =完全透明
setFillDrawable(Drawable d) 设置一个可以覆盖填充区域的Drawable。这也允许使用渐变Drawable
setDrawFilled(boolean filled) 如果DataSet需要绘制填充(表面,区域),而不单单是一条线,那么将此项设置为true,禁用此功能将提升性能。请注意,此方法使用canvas.clipPath(…)方法绘制填充区域。对于API级别<18(Android 4.3)的设备,应关闭图表的硬件加速。具体查阅此处,默认为false
setLineWidth(float width) 设置线条宽度(最小=0.2f,最大10f);默认1f。注意:细线==性能更好,粗线==性能更差

以下提到的方法仅适用于具体提到的DataSet子类。

21.4 LineDataSet

方法 使用
setCircleRadius(float size) 设置的圆形值指示符的大小(半径),默认大小= 4F
setDrawCircles(boolean enabled) 设置为true启用LineDataSet的圆形指示器。默认为true
setDrawCubic(boolean enabled) 如果设置为true,则线条图线将以立方式而不是线性绘制。这对性能有负面影响!默认值:false
setCubicIntensity(float intensity) 设置立方体线的强度(如果启用)。 Max = 1f =非常立方,Min = 0.05f =低立方效应,默认值:0.2f
setCircleColor(int color) 设置圆形指示器的颜色
setCircleColors(List colors) 设置此LineDataSet外圈应具有的颜色。还有需要其他的方法来设置外圈的颜色
setCircleColorHole(int color) 设置内圈的颜色
setDrawCircleHole(boolean enabled) 设置为true.在绘制内圈,否则不绘制内圈
enableDashedLine(float lineLength, float spaceLength, float phase) 启动虚线绘制,具体像”- - - - - -“这样. “lineLength”虚线段长度, “spaceLength”虚线段之间的空隙, “phase”是偏移量,以度数为单位(通常为0)

21.5 BarDataSet

方法 使用
setBarSpacePercent(float percent) 以总条宽的百分比设置条之间的间距
setBarShadowColor(int color) 设置用于绘制条形阴影的颜色。条形图的阴影部分是一个用来表示最大值的界面。使用getResources().getColor(…) 或者Color.rgb(…)来设置这个值
setHighLightAlpha(int alpha) 设置用于绘制高亮指示条的alpha值(透明度)。最小值=0(完全透明),最大值=255(完全不透明)
setStackLabels(String[] labels) 设置不同值的条形堆栈的标签,如果有标签的话

21.6 ScatterDataSet

方法 使用
setScatterShapeSize(float size) 设置绘制的散点图将具有的密度像素的大小。这仅适用于非自定义形状
setScatterShape(ScatterShape shape) 设置在值所在的位置绘制的形状

21.7 CandleDataSet

方法 使用
setBodySpace(float space) 设置每个蜡烛体左侧和右侧留出的空间,默认为0.1f(10%),最大0.45f,最小0f
setShadowWidth(float width) 设置蜡烛线的宽度,单位dp。默认3f
setShadowColor(int color) 设置蜡烛线的颜色
setDecreasingColor(int color) 设置当打开>关闭时应该用于此DataSet的唯一的颜色
setIncreasingColor(int color) 设置当打开<=关闭时应该用于此DataSet的唯一的颜色
setDecreasingPaintStyle(Paint.Style style) 设置当打开>关闭时的Paint风格(填充或者线条)
setIncreasingPaintStyle(Paint.Style style) 设置当打开<=关闭时的Paint风格(填充或者线条)

21.8 BubbleDataSet

方法 使用
setHighlightCircleWidth(float width) 设置在突出显示状态下气泡周围的圆的宽度,单位dp

21.9 PieDataSet

方法 使用
setSliceSpace(float degrees) 设置饼图切片之间的空隙。默认:0->没有空隙,最大20,最小0(没有空隙)
setSelectionShift(float shift) 设置此DataSet的突出显示的饼图切片距离图表中心“偏移”的距离,默认为12f

MPAndroidChart Wiki(译文)~Part 5的更多相关文章

  1. MPAndroidChart Wiki(译文)~Part 4

    16. 动画 注意:本章的动画效果只会在API 11(Android3.0.x)及以上的Android版本上生效 在低于上述的Android版本中,动画将不会被执行,并不会导致程序崩溃. 所有类型的图 ...

  2. MPAndroidChart Wiki(译文)~Part 1

    1. 基础入门 1.1 添加依赖 Gradle 工程添加依赖 (推荐使用) 项目级build.gradle中添加: allprojects { repositories { maven { url & ...

  3. MPAndroidChart Wiki(译文)~Part 6

    22. ViewPortHandler ViewPortHandler负责处理图表的视窗.也就是说它负责图表视图中的展示给用户的那部分内容.包括图表位移,缩放级别,图表大小和绘制区域以及当前偏移量.V ...

  4. MPAndroidChart Wiki(译文)~Part 2

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

  5. MPAndroidChart Wiki(译文)~Part 3

    13. 图例 默认情况下,所有的图表都支持图例并且会自动生成.给图表设置完数据之后,图例会被绘制出来.图例通常由多个条目组成,每个条目由标签形式/形状表示. 自动生成的图例包含的条目数取决于不同颜色的 ...

  6. MPAndroidChart的具体属性方法

    android中常用的第三方图表MPAndroidChart的一些具体属性及方法说明 注意:在将折线图转为曲线图时,lineDataSet.setMode(LineDataSet.Mode.CUBIC ...

  7. <Android 应用 之路> MPAndroidChart~BubbleChart(气泡图) and RadarChart(雷达图)

    简介 MPAndroidChart是PhilJay大神给Android开发者带来的福利.MPAndroidChart是一个功能强大并且使用灵活的图表开源库,支持Android和iOS两种,这里我们暂时 ...

  8. <Android 应用 之路> MPAndroidChart~ScatterChart

    简介 MPAndroidChart是PhilJay大神给Android开发者带来的福利.MPAndroidChart是一个功能强大并且使用灵活的图表开源库,支持Android和IOS两种,这里我们暂时 ...

  9. <Android 应用 之路> MPAndroidChart~PieChart

    简介 MPAndroidChart是PhilJay大神给Android开发者带来的福利.MPAndroidChart是一个功能强大并且使用灵活的图表开源库,支持Android和IOS两种,这里我们暂时 ...

随机推荐

  1. 20145327实验二Java面向对象程序设计

    Java面向对象程序设计 实验内容 初步掌握单元测试和TDD 理解并掌握面向对象三要素:封装.继承.多态 初步掌握UML建模 熟悉S.O.L.I.D原则 了解设计模式 伪代码,产品代码,测试代码的应用 ...

  2. 20145329 吉东云《Java程序设计》第二周学习总结

    教材学习内容总结 第三章 基础语法 基本类型 1.整数(short.int.long) 2.字节(byte),可表示-128~127的整数 3.浮点数(float/double),主要储存小数数值 4 ...

  3. javaScript对象与JSON.stringfly(obj)

    //接收json对象 var objJson = new Object(); var arr = new Array(); var obj1 = new Object(); obj1.age = 15 ...

  4. redis:Invalid input of type: 'bool' type. Convert to a byte,string or number first

    分析:出现此错误的原因是redis版本过高导致的,因此降低redis版本即可 解决: pip install -U redis==2.10.6

  5. spring cloud feign 调用服务注意问题

    服务端 rest api @RequestMapping(value = "/phone") public ResponsePhone getPhone(@RequestParam ...

  6. Python基础笔记系列八:字符串的运算和相关函数

    本系列教程供个人学习笔记使用,如果您要浏览可能需要其它编程语言基础(如C语言),why?因为我写得烂啊,只有我自己看得懂!! 字符串的运算1.字符串的加法和乘法 python中不但支持字符串相加,还支 ...

  7. redis——redis主从复制

    和MySQL主从复制的原因一样,Redis虽然读取写入的速度都特别快,但是也会产生读压力特别大的情况.为了分担读压力,Redis支持主从复制,Redis的主从结构可以采用一主多从或者级联结构,Redi ...

  8. 【Python】学习笔记之函数

    Python函数 在Python中,一切皆为对象,函数也可以赋给一个变量,就是指向一个函数对象的引用,相当于给这个函数起了一个“别名”: >>> a = max >>&g ...

  9. 毕业设计总结(1)-canvas画图

    去年6月底完成的毕业设计,到现在也才开始给它做个总结,里面有很多可以学习和借鉴的东西. 我的毕业设计的题目是“一种路径规划算法的改进与设计”,具体的要求可参见下面的表格: 题目 一种路径规划算法的改进 ...

  10. 分布式缓存集群方案特性使用场景(Memcache/Redis(Twemproxy/Codis/Redis-cluster))优缺点对比及选型

    分布式缓存集群方案特性使用场景(Memcache/Redis(Twemproxy/Codis/Redis-cluster))优缺点对比及选型   分布式缓存特性: 1) 高性能:当传统数据库面临大规模 ...