altair.Shape#

class altair.Shape(shorthand=Undefined, aggregate=Undefined, bandPosition=Undefined, bin=Undefined, condition=Undefined, field=Undefined, legend=Undefined, scale=Undefined, sort=Undefined, timeUnit=Undefined, title=Undefined, type=Undefined, **kwds)#

Shape 模式封装器。

参数:
shorthandstr, dict, Sequence[str], RepeatRef

field、aggregate 和 type 的简写形式

aggregatedict, Aggregate, ArgmaxDef, ArgminDef, NonArgAggregateOp, Literal[‘average’, ‘count’, ‘distinct’, ‘max’, ‘mean’, ‘median’, ‘min’, ‘missing’, ‘product’, ‘q1’, ‘q3’, ‘ci0’, ‘ci1’, ‘stderr’, ‘stdev’, ‘stdevp’, ‘sum’, ‘valid’, ‘values’, ‘variance’, ‘variancep’, ‘exponential’, ‘exponentialb’]

字段的聚合函数(例如,"mean", "sum", "median", "min", "max", "count")。

默认值: undefined (无)

另请参见: aggregate 文档。

bandPositionfloat

堆叠、分箱、时间单位或带状比例尺上的相对位置。例如,如果设置为 0,标记将位于带状的起始处;如果设置为 0.5,则位于带状的中间。

binbool, dict, BinParams, None

一个标志,用于对 quantitative 字段进行分箱,一个定义分箱参数的对象,或表示 xy 通道的数据在导入 Vega-Lite 之前已经分箱("binned")。

  • 如果为 true,将应用默认的分箱参数

  • 如果为 "binned",则表示 x(或 y)通道的数据已经分箱。您可以将分箱起始字段映射到 x(或 y),将分箱结束字段映射到 x2(或 y2)。比例尺和坐标轴的格式将类似于 Vega-Lite 中的分箱。要根据分箱步长调整坐标轴刻度,您还可以设置坐标轴的 tickMinStep 属性。

默认值: false

另请参见: bin 文档。

conditiondict, ConditionalValueDefstringnullExprRef, ConditionalParameterValueDefstringnullExprRef, ConditionalPredicateValueDefstringnullExprRef, Sequence[dict, ConditionalValueDefstringnullExprRef, ConditionalParameterValueDefstringnullExprRef, ConditionalPredicateValueDefstringnullExprRef]

一个或多个值定义,带有参数或测试谓词

注意:字段定义的 condition 属性只能包含条件值定义,因为 Vega-Lite 每个编码通道最多只允许一个编码字段。

fieldstr, dict, Field, FieldName, RepeatRef

必填。 一个字符串,定义要从中提取数据值的字段名称,或一个定义来自 repeat 操作符的迭代值的对象。

另请参见: field 文档。

注意: 1) 可以使用点 (.) 和方括号 ([]) 访问嵌套对象(例如,"field": "foo.bar""field": "foo['bar']")。如果字段名称包含点或方括号但未嵌套,可以使用 \\ 对点和方括号进行转义(例如,"a\\.b""a\\[0\\]")。有关转义的更多详细信息,请参阅field 文档。 2) 如果 aggregatecount,则不需要 field

legenddict, Legend, None

一个定义图例属性的对象。如果为 null,将移除编码通道的图例。

默认值: 如果未定义,将应用默认的图例属性

另请参见: legend 文档。

scaledict, Scale, None

一个定义通道比例尺属性的对象,比例尺是将数据域中的值(数字、日期、字符串等)转换为编码通道视觉值(像素、颜色、大小)的函数。

如果为 null,比例尺将被禁用,数据值将直接编码

默认值: 如果未定义,将应用默认的比例尺属性

另请参见: scale 文档。

sortdict, Sort, Sequence[str], Sequence[bool], Sequence[float], SortArray, SortOrder, AllSortString, SortByChannel, SortByEncoding, EncodingSortField, SortByChannelDesc, Sequence[dict, DateTime], Literal[‘-x’, ‘-y’, ‘-color’, ‘-fill’, ‘-stroke’, ‘-strokeWidth’, ‘-size’, ‘-shape’, ‘-fillOpacity’, ‘-strokeOpacity’, ‘-opacity’, ‘-text’, ‘ascending’, ‘descending’, ‘x’, ‘y’, ‘color’, ‘fill’, ‘stroke’, ‘strokeWidth’, ‘size’, ‘shape’, ‘fillOpacity’, ‘strokeOpacity’, ‘opacity’, ‘text’], None

编码字段的排序顺序。

对于连续字段(定量或时间),sort 可以是 "ascending"(升序)或 "descending"(降序)。

对于离散字段,sort 可以是以下之一

  • "ascending""descending" – 按 JavaScript 中值的自然顺序排序。

  • 一个字符串,指示要按其排序的编码通道名称(例如,"x""y"),可选带一个负号前缀表示降序排序(例如,"-x" 按 x 字段降序排序)。此通道字符串是按编码定义排序的简写形式。例如,"sort": "-x" 等同于 "sort": {"encoding": "x", "order": "descending"}

  • 一个排序字段定义,用于按另一个字段排序。

  • 一个数组,指定字段值的首选顺序。在这种情况下,排序顺序将遵循数组中的值,然后是任何未指定值按其原始顺序排列。对于离散时间字段,排序数组中的值可以是日期时间定义对象。此外,对于时间单位 "month""day",值可以是月份或日期的名称(不区分大小写)或其 3 字母缩写(例如,"Mon", "Tue")。

  • null 表示不进行排序。

默认值: "ascending"

注意: rowcolumn 不支持 null 和按其他通道排序。

另请参见: sort 文档。

timeUnitdict, TimeUnit, MultiTimeUnit, BinnedTimeUnit, SingleTimeUnit, TimeUnitParams, UtcMultiTimeUnit, UtcSingleTimeUnit, LocalMultiTimeUnit, LocalSingleTimeUnit, Literal[‘binnedutcyear’, ‘binnedutcyearquarter’, ‘binnedutcyearquartermonth’, ‘binnedutcyearmonth’, ‘binnedutcyearmonthdate’, ‘binnedutcyearmonthdatehours’, ‘binnedutcyearmonthdatehoursminutes’, ‘binnedutcyearmonthdatehoursminutesseconds’, ‘binnedutcyearweek’, ‘binnedutcyearweekday’, ‘binnedutcyearweekdayhours’, ‘binnedutcyearweekdayhoursminutes’, ‘binnedutcyearweekdayhoursminutesseconds’, ‘binnedutcyeardayofyear’, ‘binnedyear’, ‘binnedyearquarter’, ‘binnedyearquartermonth’, ‘binnedyearmonth’, ‘binnedyearmonthdate’, ‘binnedyearmonthdatehours’, ‘binnedyearmonthdatehoursminutes’, ‘binnedyearmonthdatehoursminutesseconds’, ‘binnedyearweek’, ‘binnedyearweekday’, ‘binnedyearweekdayhours’, ‘binnedyearweekdayhoursminutes’, ‘binnedyearweekdayhoursminutesseconds’, ‘binnedyeardayofyear’, ‘utcyear’, ‘utcquarter’, ‘utcmonth’, ‘utcweek’, ‘utcday’, ‘utcdayofyear’, ‘utcdate’, ‘utchours’, ‘utcminutes’, ‘utcseconds’, ‘utcmilliseconds’, ‘year’, ‘quarter’, ‘month’, ‘week’, ‘day’, ‘dayofyear’, ‘date’, ‘hours’, ‘minutes’, ‘seconds’, ‘milliseconds’, ‘utcyearquarter’, ‘utcyearquartermonth’, ‘utcyearmonth’, ‘utcyearmonthdate’, ‘utcyearmonthdatehours’, ‘utcyearmonthdatehoursminutes’, ‘utcyearmonthdatehoursminutesseconds’, ‘utcyearweek’, ‘utcyearweekday’, ‘utcyearweekdayhours’, ‘utcyearweekdayhoursminutes’, ‘utcyearweekdayhoursminutesseconds’, ‘utcyeardayofyear’, ‘utcquartermonth’, ‘utcmonthdate’, ‘utcmonthdatehours’, ‘utcmonthdatehoursminutes’, ‘utcmonthdatehoursminutesseconds’, ‘utcweekday’, ‘utcweekdayhours’, ‘utcweekdayhoursminutes’, ‘utcweekdayhoursminutesseconds’, ‘utcdayhours’, ‘utcdayhoursminutes’, ‘utcdayhoursminutesseconds’, ‘utchoursminutes’, ‘utchoursminutesseconds’, ‘utcminutesseconds’, ‘utcsecondsmilliseconds’, ‘yearquarter’, ‘yearquartermonth’, ‘yearmonth’, ‘yearmonthdate’, ‘yearmonthdatehours’, ‘yearmonthdatehoursminutes’, ‘yearmonthdatehoursminutesseconds’, ‘yearweek’, ‘yearweekday’, ‘yearweekdayhours’, ‘yearweekdayhoursminutes’, ‘yearweekdayhoursminutesseconds’, ‘yeardayofyear’, ‘quartermonth’, ‘monthdate’, ‘monthdatehours’, ‘monthdatehoursminutes’, ‘monthdatehoursminutesseconds’, ‘weekday’, ‘weekdayhours’, ‘weekdayhoursminutes’, ‘weekdayhoursminutesseconds’, ‘dayhours’, ‘dayhoursminutes’, ‘dayhoursminutesseconds’, ‘hoursminutes’, ‘hoursminutesseconds’, ‘minutesseconds’, ‘secondsmilliseconds’]

时间字段的时间单位(例如,year, yearmonth, month, hours)。或转换为有序类型的时间字段

默认值: undefined (无)

另请参见: timeUnit 文档。

titlestr, Text, Sequence[str], None

字段的标题。如果为 null,将移除标题。

默认值: 由字段名称和转换函数(aggregate, bintimeUnit)派生。如果字段有聚合函数,该函数将显示为标题的一部分(例如,"Sum of Profit")。如果字段经过分箱或应用了时间单位,应用函数将显示在括号中(例如,"Profit (binned)", "Transaction Date (year-month)")。否则,标题仅为字段名称。

注意:

1) 您可以通过在 config 中提供 fieldTitle 属性,或通过 compile 函数的选项中的 fieldTitle 函数来自定义默认字段标题格式。

2) 如果字段定义的 title 和坐标轴、头部或图例的 title 都已定义,将使用坐标轴/头部/图例的标题。

typeTypeForShape, Literal[‘nominal’, ‘ordinal’, ‘geojson’]

编码字段或常量值(datum)的测量类型("quantitative" 定量,"temporal" 时间,"ordinal" 有序,或 "nominal" 名义)。它也可以是用于编码‘geoshape’"geojson" 类型。

在许多情况下,Vega-Lite 会自动推断数据类型,如下所述。但是,字段类型是必需的,如果:(1) 字段不是名义类型,且字段编码没有指定 aggregateargminargmax 除外)、bin、比例尺类型、自定义 sort 顺序或 timeUnit,或者 (2) 如果您希望对带有 bintimeUnit 的字段使用有序比例尺。

默认值

1) 对于数据 field"nominal"(名义)是默认数据类型,除非字段编码具有满足以下条件的 aggregatechannelbin、比例尺类型、sorttimeUnit

  • 如果 (1) 编码字段包含 binaggregate"argmin""argmax" 除外),(2) 编码通道是 latitudelongitude 通道,或 (3) 如果指定的比例尺类型是定量比例尺,则默认类型为 "quantitative"(定量)。

  • 如果 (1) 编码字段包含 timeUnit,或 (2) 指定的比例尺类型是时间或 UTC 比例尺,则默认类型为 "temporal"(时间)。

  • 如果 (1) 编码字段包含自定义排序顺序,(2) 指定的比例尺类型是有序/点/带状比例尺,或 (3) 编码通道是 order,则默认类型为 "ordinal"(有序)。

  1. 对于数据域中的常量值(datum

  • 如果 datum 是数字,则为 "quantitative"(定量)

  • 如果 datum 是字符串,则为 "nominal"(名义)

  • 如果 datum 是日期时间对象,则为 "temporal"(时间)

注意

  • 数据 type 描述的是数据的语义,而不是原始数据类型(数字、字符串等)。相同的原始数据类型可以有不同的测量类型。例如,数值数据可以表示定量、有序或名义数据。

  • 时间字段的数据值可以是日期时间字符串(例如,"2015-03-07 12:32:17", "17:01", "2015-03-16", "2015")或时间戳数字(例如,1552199579097)。

  • bin 一起使用时,type 属性可以是 "quantitative"(用于线性分箱比例尺)或“ordinal”(用于有序分箱比例尺)

  • timeUnit 一起使用时,type 属性可以是 "temporal"(默认,用于时间比例尺)或“ordinal”(用于有序比例尺)

  • aggregate 一起使用时,type 属性指的是聚合后的数据类型。例如,我们可以使用 {"aggregate": "distinct", "field": "cat"} 计算分类字段 "cat" 的唯一值数量。聚合输出的 "type""quantitative"

  • 辅助通道(例如,x2, y2, xError, yError)没有 type,因为它们的类型必须与其主通道(例如,x, y)完全相同。

另请参见: type 文档。

__init__(shorthand=Undefined, aggregate=Undefined, bandPosition=Undefined, bin=Undefined, condition=Undefined, field=Undefined, legend=Undefined, scale=Undefined, sort=Undefined, timeUnit=Undefined, title=Undefined, type=Undefined, **kwds)#

方法

__init__([shorthand, aggregate, ...])

copy([deep, ignore])

返回对象的副本。

from_dict(dct[, validate])

从字典表示构建类。

from_json(json_string[, validate])

从有效的 JSON 字符串实例化对象。

resolve_references([schema])

在此对象的模式或根模式的上下文中解析引用。

to_dict([validate, ignore, context])

返回对象的字典表示。

to_json([validate, indent, sort_keys, ...])

将此对象的 JSON 表示作为字符串输出。

validate(instance[, schema])

在根模式的上下文中,根据类模式验证实例。

validate_property(name, value[, schema])

在根模式的上下文中,根据属性模式验证属性。

属性

aggregate

Aggregate 模式封装器。

bandPosition

堆叠、分箱、时间单位或带状比例尺上的相对位置。

bin

BinParams 模式封装器。

condition

一个或多个值定义,带有 [参数或测试谓词](https://vega.github.io/vega-lite/docs/condition.html)。

field

Field 模式封装器。

legend

Legend 模式封装器。

scale

Scale 模式封装器。

sort

Sort 模式封装器。

timeUnit

TimeUnit 模式封装器。

title

TitleParams 模式封装器。

type

Type 模式封装器。