altair.StringFieldDefWithCondition#
- class altair.StringFieldDefWithCondition(shorthand=Undefined, aggregate=Undefined, bandPosition=Undefined, bin=Undefined, condition=Undefined, field=Undefined, format=Undefined, formatType=Undefined, timeUnit=Undefined, title=Undefined, type=Undefined, **kwds)#
StringFieldDefWithCondition 模式包装器。
- 参数:
- shorthandstr, dict, Sequence[str],
RepeatRef
字段、聚合和类型的简写
- 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, Literal[‘binned’],
BinParams
, None 用于对
quantitative
(定量)字段进行分箱的标志,一个定义分箱参数的对象,或指示用于x
或y
通道的数据在导入 Vega-Lite 之前已进行分箱("binned"
)。如果设置为
true
,将应用默认的分箱参数。如果设置为
"binned"
,这表明x
(或y
)通道的数据已经分箱。你可以将分箱起始字段映射到x
(或y
),并将分箱结束字段映射到x2
(或y2
)。比例尺和轴的格式将类似于 Vega-Lite 中的分箱。要根据分箱步长调整轴刻度,你还可以设置轴的tickMinStep属性。
默认值:
false
另请参阅: bin 文档。
- conditiondict,
ConditionalValueDefstringExprRef
,ConditionalParameterValueDefstringExprRef
,ConditionalPredicateValueDefstringExprRef
, Sequence[dict,ConditionalValueDefstringExprRef
,ConditionalParameterValueDefstringExprRef
,ConditionalPredicateValueDefstringExprRef
] 一个或多个带有参数或测试谓词的值定义。
注意: 字段定义的
condition
属性只能包含条件值定义,因为 Vega-Lite 每个编码通道最多只允许一个编码字段。- fieldstr, dict,
Field
,FieldName
,RepeatRef
必需项。一个字符串,定义从中提取数据值的字段名称;或一个对象,定义从repeat操作符迭代的值。
另请参阅: field 文档。
注意: 1) 点号(
.
)和方括号([
和]
)可用于访问嵌套对象(例如,"field": "foo.bar"
和"field": "foo['bar']"
)。如果字段名包含点号或方括号但不是嵌套的,你可以使用\\
来转义点号和方括号(例如,"a\\.b"
和"a\\[0\\]"
)。有关转义的更多详细信息,请参阅field 文档。 2) 如果aggregate
是count
,则不需要field
。- formatstr, dict,
Dict
当与默认的
"number"
(数字)和"time"
(时间)格式类型一起使用时,用于引导元素(轴、图例、标题)和文本标记的文本格式模式。有关更多示例,请参阅格式文档。
当与自定义 formatType 一起使用时,此值将作为
format
与datum.value
一起传递给注册函数。默认值: 数字格式取自numberFormat配置,时间格式取自timeFormat配置。
- formatTypestr
标签的格式类型。可以是
"number"
(数字)、"time"
(时间),或注册的自定义格式类型。默认值
对于时态字段以及带有
timeUnit
的有序和名义字段,默认值为"time"
。对于定量字段以及不带
timeUnit
的有序和名义字段,默认值为"number"
。
- 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
、bin
和timeUnit
)派生而来。如果字段具有聚合函数,该函数将作为标题的一部分显示(例如,"Sum of Profit"
)。如果字段已分箱或应用了时间单位,应用函数将显示在括号中(例如,"Profit (binned)"
、"Transaction Date (year-month)"
)。否则,标题就是字段名称。注意:
1) 你可以通过在config中提供fieldTitle属性或通过compile 函数的 options 提供的 fieldTitle 函数来定制默认的字段标题格式。
2) 如果字段定义的
title
以及轴、标题或图例的title
都已定义,则使用轴/标题/图例的标题。- type
StandardType
, Literal[‘quantitative’, ‘ordinal’, ‘temporal’, ‘nominal’] 编码字段或常量值(
datum
)的度量类型("quantitative"
定量、"temporal"
时态、"ordinal"
有序、或"nominal"
名义)。它也可以是用于编码‘geoshape’的"geojson"
类型。Vega-Lite 在很多情况下会自动推断数据类型,如下所述。但是,如果字段满足以下条件,则需要指定类型:(1) 字段不是名义类型,且字段编码未指定
aggregate
(除了argmin
和argmax
)、bin
、比例尺类型、自定义sort
顺序或timeUnit
;或者 (2) 你希望对带有bin
或timeUnit
的字段使用有序比例尺。默认值
1) 对于数据
field
,"nominal"
(名义)是默认数据类型,除非字段编码具有满足以下条件的aggregate
(聚合)、channel
(通道)、bin
(分箱)、比例尺类型、sort
(排序)或timeUnit
(时间单位)如果 (1) 编码字段包含
bin
或aggregate
(除了"argmin"
和"argmax"
),(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, condition=Undefined, field=Undefined, format=Undefined, formatType=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])在根模式的上下文中,根据属性模式验证属性。