altair.PositionFieldDefBase#
- class altair.PositionFieldDefBase(shorthand=Undefined, aggregate=Undefined, bandPosition=Undefined, bin=Undefined, field=Undefined, scale=Undefined, sort=Undefined, stack=Undefined, timeUnit=Undefined, title=Undefined, type=Undefined, **kwds)#
PositionFieldDefBase 模式包装器。
- 参数:
- 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
(None)另请参阅: aggregate 文档。
- bandPositionfloat
在堆叠、分箱、时间单位或带状比例尺的带上的相对位置。例如,如果设置为
0
,标记将位于带的开始位置;如果设置为0.5
,则位于带的中间位置。- binbool, dict, Literal[‘binned’],
BinParams
, None 一个标志,用于对
quantitative
字段进行分箱,一个定义分箱参数的对象,或指示x
或y
通道的数据在导入 Vega-Lite 之前已进行分箱("binned"
)。如果为
true
,将应用默认的分箱参数。如果为
"binned"
,这表示x
(或y
)通道的数据已经分箱。你可以将分箱起始字段映射到x
(或y
),将分箱结束字段映射到x2
(或y2
)。比例尺和轴的格式将类似于 Vega-Lite 中的分箱。要根据分箱步长调整轴刻度,你还可以设置轴的 tickMinStep 属性。
默认值:
false
另请参阅: bin 文档。
- fieldstr, dict,
Field
,FieldName
,RepeatRef
必需。 一个字符串,定义从中提取数据值的字段名称,或一个对象,定义来自 repeat 运算符的迭代值。
另请参阅: field 文档。
注意: 1) 点(
.
)和方括号([
和]
)可用于访问嵌套对象(例如,"field": "foo.bar"
和"field": "foo['bar']"
)。如果字段名称包含点或方括号但不是嵌套的,可以使用\\
进行转义(例如,"a\\.b"
和"a\\[0\\]"
)。有关转义的更多详细信息,请参阅field 文档。 2) 如果aggregate
为count
,则不需要field
。- 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"
注意:
row
和column
不支持null
和按另一个通道排序。另请参阅: sort 文档。
- stackbool,
StackOffset
, Literal[‘zero’, ‘center’, ‘normalize’], None 如果字段需要堆叠,则指定堆叠偏移的类型。
stack
仅适用于具有连续域的x
、y
、theta
和radius
通道。例如,可以使用y
的stack
自定义垂直条形图的堆叠。stack
可以是以下值之一:"normalize"
- 使用归一化域进行堆叠(用于创建归一化堆叠条形图和面积图以及带有百分比工具提示的饼图)。"center"
- 使用中心基线进行堆叠(用于流图)。null
或false
- 不堆叠。这将生成分层的条形图和面积图。
默认值: 对于满足以下所有条件的图表,默认值为
zero
:(1) 标记为bar
,area
, 或arc
;(2) 堆叠的度量通道(x 或 y)具有线性比例尺;(3) 至少有一个非位置通道映射到一个未聚合的字段,且该字段不同于 x 和 y。否则,默认值为null
。另请参阅: stack 文档。
- 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
(None)另请参阅: timeUnit 文档。
- titlestr,
Text
, Sequence[str], None 字段的标题。如果为
null
,则移除标题。默认值: 源自字段名称和转换函数(
aggregate
、bin
和timeUnit
)。如果字段具有聚合函数,则该函数会作为标题的一部分显示(例如,"Sum of Profit"
)。如果字段经过分箱或应用了时间单位,则应用的函数会显示在括号中(例如,"Profit (binned)"
,"Transaction Date (year-month)"
)。否则,标题仅为字段名称。注意:
1) 你可以通过在 config 中提供 fieldTitle 属性或通过 compile 函数的选项提供 fieldTitle 函数来自定义默认的字段标题格式。
2) 如果同时定义了字段定义的
title
和轴、标题栏或图例的title
,则使用轴/标题栏/图例的标题。- type
StandardType
, Literal[‘quantitative’, ‘ordinal’, ‘temporal’, ‘nominal’] 编码字段或常量值(
datum
)的测量类型("quantitative"
定量、"temporal"
时间、"ordinal"
顺序 或"nominal"
名义)。它也可以是"geojson"
类型,用于编码‘geoshape’。在许多情况下,Vega-Lite 会自动推断数据类型,如下所述。但是,在以下情况下,字段需要指定类型:(1) 该字段不是名义类型,且字段编码没有指定
aggregate
(argmin
和argmax
除外)、bin
、比例尺类型、自定义sort
顺序或timeUnit
;或 (2) 如果你想对带有bin
或timeUnit
的字段使用顺序比例尺。默认值
1) 对于数据
field
,默认数据类型是"nominal"
,除非字段编码具有满足以下条件的aggregate
、channel
、bin
、比例尺类型、sort
或timeUnit
:如果 (1) 编码字段包含
bin
或除"argmin"
和"argmax"
外的aggregate
,(2) 编码通道是latitude
或longitude
通道,或者 (3) 指定的比例尺类型是定量比例尺,则默认类型为"quantitative"
。如果 (1) 编码字段包含
timeUnit
,或者 (2) 指定的比例尺类型是时间或 utc 比例尺,则默认类型为"temporal"
。如果 (1) 编码字段包含自定义排序顺序,(2) 指定的比例尺类型是顺序/点/带状比例尺,或者 (3) 编码通道是
order
,则默认类型为"ordinal"
。
对于数据域中的常量值(
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"
的distinct
计数。聚合输出的"type"
为"quantitative"
。辅助通道(例如,
x2
、y2
、xError
、yError
)没有type
属性,因为它们必须与其主通道(例如,x
、y
)具有完全相同的类型。
另请参阅: type 文档。
- shorthandstr, dict, Sequence[str],
- __init__(shorthand=Undefined, aggregate=Undefined, bandPosition=Undefined, bin=Undefined, field=Undefined, scale=Undefined, sort=Undefined, stack=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])在根模式的上下文中验证属性是否符合属性模式。