图表组件

« 返回首页

图表组件

目录:

  1. icon 图表
  2. icon 二维图表数据
  3. icon 趋势线

icon 图表

图表组件用于绘制其附加数据(如二维图表数据组件)的组件。有五种不同的图表类型,包括折线图、面积图、散点图、条形图和饼图,可通过类型 属性修改。

图表组件有其他可以更改外观的属性,例如 描述启用网格

图表的入门教程请查看《【App Inventor 2 数据可视化】使用柱状图和饼图收集数据》

属性

背景颜色
设置图表的背景颜色,使用RGBA数值表示。
描述
指定图表内描述标签显示的文本。指定空字符串 (“”) 将不会显示标签。
启用网格
更改图表网格的可见性,如果图表类型设置为带轴的图表(适用于面积图、条形图、折线图、散点图类型,饼图不适用)。
高度
设置图表的垂直高度,以像素px为单位。
高度百分比
设置图表的垂直高度相对于整个屏幕高度的百分比。
标签列表
将图表的 x 轴标签更改为指定的列表,如果图表类型设置为带轴图表。

列表的第一个条目对应于数据的最小 x 值,第二个为最小 x 值 + 1,依此类推。

如果没有为 x 值指定标签,则使用默认值使用(该位置的轴刻度的 x 值)。

CSV字符串标签
指定要设置到图表 x 轴的标签,如果当前是一个带有 x 轴的图表。

标签被指定为逗号分隔(CSV格式)的值字符串,类似的用法参考标签列表

启用图例
更改图表图例的可见性。
饼图半径
设置图表的饼图半径,如果当前类型是不是饼图,该值则没有效果。
类型
指定图表的类型,它决定如何可视化数据。
可见性
设置图表是否显示在屏幕上,值是图表显示,则隐藏。
宽度
设置图表的水平宽度,以像素px为单位。
宽度百分比
设置图表的水平宽度相对于屏幕宽度的百分比。

事件

数据点被点击时(数据序列,x坐标,y坐标)
指示用户单击图表中的数据点,返回指定点的 x轴 和 y轴值。

方法

icon 二维图表数据

二维图表数据组件表示图表组件中的单个二维数据序列。例如:如果是折线图,则为一条线;如果是条形图,则为一条条形图图表。

数据组件负责处理图表的数据,数据组件的点对应 x 和 y 值。可以将该组件拖到图表上,也就是将其直接附加到图表组件上。

属性

颜色
指定数据序列的颜色,使用RGBA数值表示。
颜色列表
指定数据序列的RGBA颜色数值列表。

如果数据多于颜色,颜色将交替显示。例如,如果有红色和蓝色两种颜色,则颜色顺序为:红、蓝、红、蓝…

数据文件x列
数据文件 组件导入数据时, 数据源 使用的值。

这个值表示数据文件中用于 x 条目的列数据序列。例如,如果列的第一个值是“时间”,并且指定了“时间”列值,将使用该列用于 x 值。

如果未指定值,则使用默认值生成 x 值。

数据文件y列
数据文件 组件导入数据时, 数据源 使用的值。

这个值表示数据文件中用于 y 条目的列数据序列。例如,如果列的第一个值为“温度”,并且指定了“温度”列值,将使用该列 y 值。

如果未指定值,则使用默认值生成 y 值。

数据源键标识符
为附加数据源导入的值设置键标识符。类似 微数据库 组件的标签,使用它标识具体的值。

该属性是“界面设计”视图专用的属性,应在设置图表数据组件的数据源后修改成相应的标识值。

每种兼容数据源的适用值的完整列表如下:

  • 对于 微数据库云数据库,这是标签值。
  • 对于 加速度传感器,该值应为以下之一:X Y 或 Z
  • 对于 陀螺仪传感器,该值应为以下之一:X Y 或 Z
  • 对于 位置传感器,该值应为以下之一:纬度、经度、高度或速度
  • 对于 方向传感器,该值应为以下之一:俯仰角、方位角或横滚角
  • 对于 计步器,该值应为以下之一:行走步数、简单步数或距离
  • 对于 距离传感器,该值应为距离。
  • 对于 蓝牙客户端,该值表示要从该值中删除的前缀。

    例如,如果值的格式为“t:12”,则前缀可以指定为“t:”,然后前缀将从数据中删除。如果是纯数值的话,则不能指定任何值。

元素来自键值对
用于数据序列的逗号分隔(CSV)元素列表。值格式化如下:x1,y1,x2,y2,x3,y3。值成对获取, x 和 y 值形成一个条目。
标签
指定数据序列标签的文本。
线型
更改数据序列的线的类型,前提是数据组件附加到基于折线的图表(适用于面积图折线图)。

有效类型包括折线曲线阶梯

点型
更改数据序列的点的形状,前提是数据组件附加到散点图的图表。

有效类型包括圆形方形三角十字叉号

数据源
设置数据组件的数据源。有效的选择包括:加速度传感器蓝牙客户端云数据库数据文件陀螺仪传感器位置传感器方向传感器计步器距离传感器微数据库Web客户端

数据源 值还需要有效的 DataSourceValue、WebColumn 或 DataFileColumn 属性,取决于附加的数据源的类型(更改数据源后,所需的属性会显示在“属性”菜单中)。

如果 数据源键标识符 标识的数据在附加的数据源组件中更新,然后数据也会在图表数据组件中更新。

使用电子表格头
如果选中,电子表格的第一行将用于解释 x 和 y 列值。 否则,x 和 y 列应该是列引用,例如 A 或 B。
电子表格X列
设置要从附加的电子表格组件中解析 x 列的值。如果未指定列,则会生成 x 列值的默认值。
电子表格Y列
设置要从附加的电子表格组件中解析 y 列的值。如果未指定列,则会生成 y 列值的默认值。
Web客户端X列
Web客户端 组件源导入数据时使用的值。该值表示来自 Web客户端 的用于数据系列 x 条目的列。例如,如果以 JSON 格式检索 Web客户端 内容,并且存在带有“Time”标签的数组,则可以指定“Time”列值以使用该数组。
Web客户端Y列
Web客户端 组件源导入数据时使用的值。该值表示来自 Web客户端 的用于数据系列 y 条目的列。 例如,如果以 JSON 格式检索 Web客户端 内容,并且存在带有“Temperature”标签的数组,则可以指定“Temperature”列值以使用该数组。

事件

数据点被点击时(x坐标,y坐标)
指示用户单击图表中的数据点,返回指定点的 x轴 和 y轴值。

方法

添加数据点(x,y)
添加具有指定 x 和 y 值的条目。 值可以指定为文本或数字。 对于折线图、散点图、面积图和条形图,两个值都应代表数字。

对于条形图,x 值四舍五入到最接近的整数。

对于饼图,x 值是文本值。

删除数据点(x,y)
删除具有指定 x 和 y 值的条目(前提是该条目存在)。

有关有效条目值的说明,请参阅 添加数据点

改变数据源(source,keyValue)
将组件的数据源更改为具有指定键值的指定组件源。

请参阅 数据源 属性了解适用的组件。

请参阅 数据源键标识符 属性了解 keyValue 的解释。

对于 数据文件Web客户端 组件,keyValue 应为 CSV 格式的字符串,其中第一个值对应于 x 列,第二个值对应于 y 值。

清除数据序列()
从数据系列中删除所有条目。
数据点是否存在(x,y)
返回一个布尔值,指定是否存在具有指定 x 和 y 值的条目。 如果该值存在,则返回布尔值 ,否则返回

有关有效条目值的说明,请参阅 添加数据点

获取所有数据点()
返回数据系列的所有条目。

返回的值是一个列表,其中列表的每个元素都是按顺序包含条目值的列表。

获取X值数据点(x)
返回与指定 x 值匹配的数据系列的所有条目。

有关返回列表格式的说明,请参阅 获取所有数据点

获取Y值数据点(y)
返回与指定 y 值匹配的数据系列的所有条目。

有关返回列表格式的说明,请参阅 获取所有数据点

从云数据库导入(云数据库,标签)
通过获取指定标签值标识的值,从指定的 云数据库 组件导入数据。

预期的 云数据库 值是一个列表,其格式与 从列表导入 中描述的相同。

不覆盖任何数据。

从数据文件导入(数据文件,x值列,y值列)
通过采用指定的 x 列作为 x 值以及指定的 y 列作为 y 值,从指定的 数据文件 组件导入数据。 数据文件 的源文件应为 CSV 或 JSON 文件。

对任何列参数传递空测试将导致使用默认值,即条目的索引。对于第一个条目,默认值为 1,对于第二个条目,默认值为 2,依此类推。

从列表导入(list)
将指定列表参数中的数据导入到数据序列中。

该列表预计包含也是列表的元素。 每个列表元素预计有 2 个值,第一个是 x 值,第二个是 y 值。

无效的列表条目将被简单地跳过。

现有数据不会被清除。

从电子表格导入(sheet,xColumn,yColumn,useHeaders)
通过将指定的 x 列作为 x 值,将指定的 y 列作为 y 值,从指定的电子表格组件导入数据。

在调用此函数之前,必须调用电子表格组件的 ReadSheet 方法来加载数据。 不需要在电子表格组件中使用 GotSheet 事件。

空列填充默认值(1、2、3、… 对于条目 1、2、3、…)。

从微数据库导入(tinyDB,tag)
通过获取指定标签值标识的值,从指定的 微数据库 组件导入数据。

预期的 微数据库 值是一个列表,其格式与 从列表导入 中描述的相同。

不覆盖任何数据。

从Web客户端导入(web,xValueColumn,yValueColumn)
通过将指定的 x 列作为 x 值,将指定的 y 列作为 y 值,从指定的 Web客户端 组件导入数据。 在调用此函数之前,必须调用 Web客户端 组件的 Get 方法来加载数据。 无需在 Web 组件中使用 gotValue 事件。

Web客户端 组件的预期响应是 JSON 或 CSV 格式的文件,以便此函数正常工作。

空列填充默认值(1、2、3、… 对于条目 1、2、3、…)。

删除数据源()
从图表数据组件中删除当前附加的数据源。

这样做将导致不再发送来自数据源的更新,但是,当前数据不会被删除。

icon 趋势线

趋势线组件可用于可视化由 二维图表数据 组件表示的数据系列的趋势。必须将其添加到 图表 组件。要关联 二维图表数据 实例,请在应用程序的设计视图中设置 图表数据 属性,或使用设置代码块。如果关联的 二维图表数据 发生变化,趋势线将自动更新。

趋势线有四种模型:线性、二次、对数和指数。根据您使用的模型,趋势线组件的某些属性将提供相关值。

  • 线性:y = m*x + b,其中 m 为线性系数,b 为 Y 截距
  • 二次:y = a*x2 + b*x + c,其中 a 为二次系数,b 为线性系数,c 为 Y 截距
  • 对数:y = a + b*ln(x),其中 a 为对数常数,b 为对数系数
  • 指数:y = a*bx,其中 a 为指数系数,b 为指数基数

对于所有模型,r2 相关性将通过 拟合系数 属性块报告。

注:此组件对AI伴侣要求最低版本为v2.70 (旧版本请扫码升级:帮助 -> AI伴侣信息),编译为apk则不受限制安装后可正常运行。

属性

图表数据
要计算最佳拟合线的数据系列。
颜色
最佳拟合线的颜色。
相关系数
趋势线与数据的相关系数。
指数项底数
方程 y = a*b^x 中指数项的底数。
指数项系数
方程 y = a*b^x 中指数项的系数。
拓展
是否将最佳拟合线延伸至数据之外。
线性系数
趋势线中线性项的系数。
对数系数
方程 y = a + b*ln(x) 中对数项的系数。
对数常数
对数方程 y = a + b*ln(x) 中的常数项。
模型
用于最佳拟合线的模型。
预测
对趋势线的预测。
二次系数
趋势线中二次项的系数(如果有)。
拟合系数
趋势线的拟合系数R平方。
结果
获取最佳拟合线计算的最新值的副本。
线条样式
最佳拟合线的线的样式。
线条宽度
最佳拟合线的线的宽度。
可见性
最佳拟合线是否可见。
X轴交点
趋势线与X轴的交点(若有)。可能的值有NaN(不相交时),单个数值(只有一个交点)或者多个值的列表。
Y轴交点
趋势线的Y轴交点(常数项)。

事件

已更新(结果)
表示最佳拟合线已更新的事件。

方法

断开数据集()
断开与趋势线关联的数据集。
获取结果值()
获取最佳拟合线的计算值,该值根据使用的模型不同而变化。例如,线型模型会有斜率和Y交点,而平方模型有x^2,斜率和交点。