热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

18.ChartData类详解(MPAndroidChart中文版解析)

在《ChartData类详解》一文中,我们将深入探讨MPAndroidChart中的ChartData类。本文将详细介绍如何设置图表颜色(SettingColors)以及如何格式化数据值(FormattingDataValues),通过ValueFormatter的使用来提升图表的可读性和美观度。此外,我们还将介绍一些高级配置选项,帮助开发者更好地定制和优化图表展示效果。

目录

第8节.Setting Colors(MPAndroidChart中文翻译)
第9节.Formatting Data Values (ValueFormatter)(MPAndroidChart中文翻译)
第10节-Formatting Axis Values (AxisValueFormatter)(MPAndroidChart中文翻译)
第11节.General Settings & Styling(MPAndroidChart中文翻译)
第12节.Specific Settings & Styling(MPAndroidChart中文翻译)
第13节.Legend(MPAndroidChart中文翻译)
第14节.Dynamic & Realtime Data(MPAndroidChart中文翻译)
第15节. Modifying the Viewport(MPAndroidChart中文翻译)
第16节.Animations(MPAndroidChart中文翻译)
第17节. MarkerView (Popup View)(MPAndroidChart中文翻译)
第18节. The ChartData class(MPAndroidChart中文翻译)
第19节. ChartData subclasses(MPAndroidChart中文翻译)
第20节. The DataSet class (general DataSet styling)(MPAndroidChart中文翻译)
第21节. DataSet subclasses (specific DataSet styling)(MPAndroidChart中文翻译)
第22节. The ViewPortHandler(MPAndroidChart中文翻译)
第23节. Customizing the Fill-Line-Position (FillFormatter)(MPAndroidChart中文翻译)
第24节. Proguard(MPAndroidChart中文翻译)
第25节. Realm.io mobile database(MPAndroidChart中文翻译)
第26节. Creating your own (custom) DataSets(MPAndroidChart中文翻译)
第27节. Miscellaneous (more useful stuff)(MPAndroidChart中文翻译)

这个wiki条目是为了更好的洞察MPAndroidChart背后的数据模型.

ChartData类是所有数据类(子类)的基类,像lineData,BarData,…等等.通过setData(…)方法为图表提供数据.

public class LineData extends ChartData { ...

下文提到的方法都是ChartData类中实现的方法,因此可以用于所有子类.

Styling data (设置数据格式)

  • setValueTextColor(int color) : 设置ChartData中包含的所有DataSets中文本数据颜色(绘制纸标签的颜色).
  • setValueTextColors(List colors):设置颜色集合用于值的颜色.
  • setValueTextSize(float size):设置ChartData中包含的所有DataSets中文本数据大小(单位dp);
  • setValueTypeface(Typeface tf): 设置ChartData中包含的所有DataSet中标签的字体.
  • setValueFormatter(ValueFormatter f): 给当前数据包含的所有DataSets设置资格自定义ValueFormatter,关于更多ValueFormatter;
  • setDrawValues(boolean enabled):为当前数据包含的所有DataSets设置是否绘制文本数据.

Getters / Convenience (获取/便利)

  • getDataSetByIndex(int index): 获取ChartData指定索引的DataSet集合.
  • contains(Entry entry): 检查当前数据集中是否包含指定Entry对象.包含返回true,否则返回false.(经测试,该方法为DataSet类的方法了))

注意该方法严重影响性能,请不要在性能危机的状况下过度使用.

  • contains(T dataSet): 如果数据集包含指定的DataSet返回true,否则返回false.

Clearing (清除)

  • clearValues(): 清除当前数据集的所有DataSet的所有Entry对象.但不删除提供的x值.

Highlighting(突出显示)

  • setHighlightEnabled(boolean enabled): 设置为true允许通过触摸ChartData和所有DataSets时突出显示.
  • setDrawVerticalHighlightIndicator(boolean enabled): 启用/禁用 垂直方向的突出指示线.如果禁用,指示线将不会绘制.(经测试,该方法为DataSet类的方法了))
  • setDrawHorizontalHighlightIndicator(boolean enabled):启用/禁用 水平方向的突出指示线.如果禁用,指示线将不会绘制.(经测试,该方法为DataSet类的方法了))

Dynamic Data (动态数据)

  • notifyDataChanged(): 通知ChartData知道底层依靠的数据发生改变,执行所有必要的计算逻辑.

从已有的ChartData中动态添加和移除数据其他方法请参考
dynamic & realtime data 章节.


推荐阅读
  • 面临考试压力,急需解决四个编程问题,包括实现乒乓球的动态效果、计算特定日期是一年的第几天、逆序输出数字以及创建弹出菜单。每个问题的解决都能在TC3.0环境中获得50分。 ... [详细]
  • PHP 过滤器详解
    本文深入探讨了 PHP 中的过滤器机制,包括常见的 $_SERVER 变量、filter_has_var() 函数、filter_id() 函数、filter_input() 函数及其数组形式、filter_list() 函数以及 filter_var() 和其数组形式。同时,详细介绍了各种过滤器的用途和用法。 ... [详细]
  • ECharts图表绘制函数集
    本文档提供了使用ECharts库创建柱状图、饼图和双折线图的JavaScript函数。每个函数都详细列出了参数说明,并通过示例展示了如何调用这些函数以生成不同类型的图表。 ... [详细]
  • 毕业设计:基于机器学习与深度学习的垃圾邮件(短信)分类算法实现
    本文详细介绍了如何使用机器学习和深度学习技术对垃圾邮件和短信进行分类。内容涵盖从数据集介绍、预处理、特征提取到模型训练与评估的完整流程,并提供了具体的代码示例和实验结果。 ... [详细]
  • 深入理解Redis的数据结构与对象系统
    本文详细探讨了Redis中的数据结构和对象系统的实现,包括字符串、列表、集合、哈希表和有序集合等五种核心对象类型,以及它们所使用的底层数据结构。通过分析源码和相关文献,帮助读者更好地理解Redis的设计原理。 ... [详细]
  • 本文将详细探讨Linux pinctrl子系统的各个关键数据结构,帮助读者深入了解其内部机制。通过分析这些数据结构及其相互关系,我们将进一步理解pinctrl子系统的工作原理和设计思路。 ... [详细]
  • C# WPF 打字射击游戏开发
    介绍了一个基于C#和WPF技术的简单打字射击游戏的实现方法,包括字母的生成、移动、消除以及基本的游戏界面设计。 ... [详细]
  • 本文探讨了在Android应用程序开发过程中动态管理Fragment的方法,包括动态添加和切换Fragment,以及如何实现平滑的过渡动画。文章通过一个具体的案例——订单管理系统,详细介绍了实现步骤和技术细节。 ... [详细]
  • 纵坐标|据点_菜菜的sklearn课堂笔记支持向量机线性SVM决策过程的可视化
    纵坐标|据点_菜菜的sklearn课堂笔记支持向量机线性SVM决策过程的可视化 ... [详细]
  • 本题探讨如何通过最大流算法解决农场排水系统的设计问题。题目要求计算从水源点到汇合点的最大水流速率,使用经典的EK(Edmonds-Karp)和Dinic算法进行求解。 ... [详细]
  • 深入解析 Apache Shiro 安全框架架构
    本文详细介绍了 Apache Shiro,一个强大且灵活的开源安全框架。Shiro 专注于简化身份验证、授权、会话管理和加密等复杂的安全操作,使开发者能够更轻松地保护应用程序。其核心目标是提供易于使用和理解的API,同时确保高度的安全性和灵活性。 ... [详细]
  • 优化局域网SSH连接延迟问题的解决方案
    本文介绍了解决局域网内SSH连接到服务器时出现长时间等待问题的方法。通过调整配置和优化网络设置,可以显著缩短SSH连接的时间。 ... [详细]
  • 本文介绍如何使用布局文件在Android应用中排列多行TextView和Button,使其占据屏幕的特定比例,并提供示例代码以帮助理解和实现。 ... [详细]
  • 本文介绍如何通过 JavaScript 实现一个基于鼠标坐标的 Tooltip 弹出层,详细解释了如何获取窗口和文档的尺寸及滚动位置,并优化了代码结构。 ... [详细]
  • 本文详细介绍如何利用已搭建的LAMP(Linux、Apache、MySQL、PHP)环境,快速创建一个基于WordPress的内容管理系统(CMS)。WordPress是一款流行的开源博客平台,适用于个人或小型团队使用。 ... [详细]
author-avatar
余温
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有