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(定量)字段进行分箱的标志,一个定义分箱参数的对象,或指示用于xy通道的数据在导入 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) 如果aggregatecount,则不需要field

formatstr, dict, Dict

当与默认的"number"(数字)和"time"(时间)格式类型一起使用时,用于引导元素(轴、图例、标题)和文本标记的文本格式模式。

  • 如果格式类型是"number"(例如,用于定量字段),这是 D3 的数字格式模式

  • 如果格式类型是"time"(例如,用于时态字段),这是 D3 的时间格式模式

有关更多示例,请参阅格式文档

当与自定义 formatType 一起使用时,此值将作为formatdatum.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’]

时态字段的时间单位(例如,yearyearmonthmonthhours)。或一个被转换为有序的时态字段

默认值: undefined (无)

另请参阅: timeUnit 文档。

titlestr, Text, Sequence[str], None

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

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

注意:

1) 你可以通过在config中提供fieldTitle属性或通过compile 函数的 options 提供的 fieldTitle 函数来定制默认的字段标题格式。

2) 如果字段定义的title以及轴、标题或图例的title都已定义,则使用轴/标题/图例的标题。

typeStandardType, Literal[‘quantitative’, ‘ordinal’, ‘temporal’, ‘nominal’]

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

Vega-Lite 在很多情况下会自动推断数据类型,如下所述。但是,如果字段满足以下条件,则需要指定类型:(1) 字段不是名义类型,且字段编码未指定aggregate(除了argminargmax)、bin、比例尺类型、自定义sort顺序或timeUnit;或者 (2) 你希望对带有bintimeUnit的字段使用有序比例尺。

默认值

1) 对于数据field"nominal"(名义)是默认数据类型,除非字段编码具有满足以下条件的aggregate(聚合)、channel(通道)、bin(分箱)、比例尺类型、sort(排序)或timeUnit(时间单位)

  • 如果 (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"distinct(唯一值计数)。聚合输出的"type""quantitative"(定量)。

  • 次要通道(例如,x2y2xErroryError)没有type,因为它们的类型必须与其主要通道(例如,xy)完全相同。

另请参阅: type 文档。

__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])

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