altair.expr#
- class altair.expr(expr)#
提供用于构建表达式的*常量*和*类方法*的工具。
表达式可用于编写基本公式,从而实现自定义交互。
- 参数:
- expr: str
一个vega 表达式字符串。
- 返回:
ExprRef
示例
>>> import altair as alt
>>> bind_range = alt.binding_range(min=100, max=300, name="Slider value: ") >>> param_width = alt.param(bind=bind_range, name="param_width") >>> param_color = alt.param( ... expr=alt.expr.if_(param_width < 200, "red", "black"), ... name="param_color", ... ) >>> y = alt.Y("yval").axis(titleColor=param_color)
>>> y Y({ axis: {'titleColor': Parameter('param_color', VariableParameter({ expr: if((param_width < 200),'red','black'), name: 'param_color' }))}, shorthand: 'yval' })
- __init__(expr=Undefined, **kwds)#
方法
__init__
([expr])abs
(value, /)返回
value
的绝对值。acos
(value, /)三角函数的反余弦(acos)。
asin
(value, /)三角函数的反正弦(asin)。
atan
(value, /)三角函数的反正切(atan)。
atan2
(dy, dx, /)返回 *dy / dx* 的反正切。
bandspace
(count[, paddingInner, paddingOuter])根据定义域元素的
count
以及内部和外部填充值,返回带状比例尺所需的步数。bandwidth
(name[, group])返回命名带状比例尺转换的当前带宽;如果未找到比例尺或比例尺不是带状比例尺,则返回零。
ceil
(value, /)将
value
向上舍入到最接近且大于或等于它的整数。clamp
(value, min, max, /)将
value
限制在指定的min
和max
之间。clampRange
(range, min, max, /)以保留跨度的方式钳制一个包含两个元素的
range
数组。containerSize
()返回包含 Vega 视图的父 DOM 元素的当前 CSS 盒模型尺寸(
[el.clientWidth, el.clientHeight]
)。contrast
(specifier1, specifier2, /)返回输入颜色指定器之间的对比度,作为一个介于 1 和 21 之间的浮点数。
copy
(name[, group])返回命名比例尺转换或投影的副本(新的克隆实例);如果未找到比例尺或投影,则返回
undefined
。cos
(value, /)三角函数的余弦(cos)。
cumulativeLogNormal
(value[, mean, stdev])返回对数正态分布在给定输入定义域
value
处的累积分布函数值,该分布具有指定的对数mean
和对数标准差stdev
。cumulativeNormal
(value[, mean, stdev])返回正态分布在给定输入定义域
value
处的累积分布函数值,该分布具有指定的mean
和标准差stdev
。cumulativeUniform
(value[, min, max])返回在区间 [
min
,max
] 上均匀分布在给定输入定义域value
处的累积分布函数值。data
(name, /)返回具有给定
name
的 Vega 数据集的数据对象数组。date
(datetime, /)返回给定
datetime
值的月份日期(本地时间)。datetime
(year, month[, day, hour, min, sec, ...])返回一个新的
Date
实例。day
(datetime, /)返回给定
datetime
值的星期几(本地时间)。dayAbbrevFormat
(day, /)根据当前区域设置,将 (0-6) *星期几* 数字格式化为缩写的星期几名称。
dayFormat
(day, /)根据当前区域设置,将 (0-6) *星期几* 数字格式化为完整的星期几名称。
dayofyear
(datetime, /)返回给定
datetime
值的一年中的第几天(从 1 开始计算,本地时间)。debug
(value1[, value2])记录调试消息并返回最后一个参数。
densityLogNormal
(value[, mean, stdev])返回对数正态分布在给定输入定义域
value
处的概率密度函数值,该分布具有指定的对数mean
和对数标准差stdev
。densityNormal
(value[, mean, stdev])返回正态分布在给定输入定义域
value
处的概率密度函数值,该分布具有指定的mean
和标准差stdev
。densityUniform
(value[, min, max])返回在区间 [
min
,max
] 上均匀分布在给定输入定义域value
处的概率密度函数值。domain
(name[, group])返回命名比例尺转换的比例尺定义域数组;如果未找到比例尺,则返回空数组。
exp
(exponent, /)返回 *e* 的
exponent
次幂。extent
(array, /)返回一个新的 *[min, max]* 数组,其中包含输入数组的最小值和最大值,忽略
null
、undefined
和NaN
值。floor
(value, /)将
value
向下舍入到最接近且小于或等于它的整数。format
(value, specifier, /)将数值
value
格式化为字符串。from_dict
(dct[, validate])从字典表示构建类。
from_json
(json_string[, validate])从有效的 JSON 字符串实例化对象。
geoArea
(projection, feature[, group])根据命名的
projection
,返回 GeoJSONfeature
的投影平面面积(通常以平方像素为单位)。geoBounds
(projection, feature[, group])根据命名的
projection
,返回指定 GeoJSONfeature
的投影平面边界框(通常以像素为单位)。geoCentroid
(projection, feature[, group])根据命名的
projection
,返回指定 GeoJSONfeature
的投影平面中心点(通常以像素为单位)。geoScale
(projection[, group])返回命名
projection
的比例尺值。gradient
(scale, p0, p1[, count])返回
scale
(其范围必须是连续配色方案)的线性颜色渐变,以及起点p0
和终点p1
,每个点都是一个 *[x, y]* 数组。group
([name])返回当前事件发生时的场景图组标记项。
hcl
(*args)构造一个新的HCL(色相、彩度、亮度)颜色。
hours
(datetime, /)返回给定
datetime
值的小时分量(本地时间)。hsl
(*args)构造一个新的HSL颜色。
hypot
(value, /)返回其参数平方和的平方根。
if_
(test, thenValue, elseValue, /)如果
test
为真值,则返回thenValue
。inScope
(item, /)如果给定的场景图
item
是定义事件处理程序的组标记的后代,则返回 true,否则返回 false。indata
(name, field, value, /)测试具有给定
name
的数据集是否包含一个数据,该数据的field
值与输入value
匹配。indexof
(array, value, /)返回
value
在输入array
中的第一个索引。info
(value1[, value2])记录信息性消息并返回最后一个参数。
inrange
(value, range, /)测试
value
是否位于range
数组的第一个和最后一个值之间(或等于其中一个值)。invert
(name, value[, group])反转指定
value
的命名比例尺转换(或投影)。isArray
(value, /)如果
value
是数组,则返回 true,否则返回 false。isBoolean
(value, /)如果
value
是布尔值(true
或false
),则返回 true,否则返回 false。isDate
(value, /)如果
value
是 Date 对象,则返回 true,否则返回 false。isDefined
(value, /)如果
value
是已定义的值,则返回 true;如果value
等于undefined
,则返回 false。isFinite
(value, /)如果
value
是有限数,则返回 true。isNaN
(value, /)如果
value
不是数字,则返回 true。isNumber
(value, /)如果
value
是数字,则返回 true,否则返回 false。isObject
(value, /)如果
value
是对象(包括数组和 Date),则返回 true,否则返回 false。isRegExp
(value, /)如果
value
是 RegExp(正则表达式)对象,则返回 true,否则返回 false。isString
(value, /)如果
value
是字符串,则返回 true,否则返回 false。isValid
(value, /)如果
value
不是null
、undefined
或NaN
,则返回 true,否则返回 false。item
()返回当前事件的目标场景图项。
join
(array[, separator])通过将输入
array
的所有元素连接起来形成新字符串,元素之间用逗号或指定的separator
字符串分隔。lab
(*args)构造一个新的CIE LAB 颜色。
lastindexof
(array, value, /)返回
value
在输入array
中的最后一个索引。length
(array, /)返回输入
array
的长度。lerp
(array, fraction, /)根据提供的插值
fraction
(通常介于 0 和 1 之间),返回array
中第一个和最后一个条目之间的线性插值结果。log
(value, /)返回
value
的自然对数。lower
(string, /)将
string
转换为小写字母。luminance
(specifier, /)返回给定颜色
specifier
的亮度(与d3-color 的 rgb 函数兼容)。max
(value1, value2, *args)返回参数的最大值。
merge
(object1[, object2])将输入对象
object1
、object2
等合并到一个新的输出对象中。milliseconds
(datetime, /)返回给定
datetime
值的毫秒分量(本地时间)。min
(value1, value2, *args)返回参数的最小值。
minutes
(datetime, /)返回给定
datetime
值的分钟分量(本地时间)。month
(datetime, /)返回给定
datetime 马的值的月份(基于零计算,本地时间)。
monthAbbrevFormat
(month, /)根据当前区域设置,将(基于零计算的)
month
数字格式化为缩写的月份名称。monthFormat
(month, /)根据当前区域设置,将(基于零计算的)
month
数字格式化为完整的月份名称。now
()返回当前时间的 Unix 时间戳。
pad
(string, length[, character, align])用重复的
character
实例填充string
值,直到指定的length
。panLinear
(domain, delta, /)给定一个包含数字或 datetime 值的线性比例尺
domain
数组,返回一个新的包含两个元素的 domain 数组,它是通过按小数delta
平移 domain 的结果。panLog
(domain, delta, /)给定一个包含数字或 datetime 值的对数比例尺
domain
数组,返回一个新的包含两个元素的 domain 数组,它是通过按小数delta
平移 domain 的结果。panPow
(domain, delta, exponent, /)给定一个包含数字或 datetime 值以及给定
exponent
的幂比例尺domain
数组,返回一个新的包含两个元素的 domain 数组,它是通过按小数delta
平移 domain 的结果。panSymlog
(domain, delta, constant, /)给定一个包含数字或 datetime 值并由给定
constant
参数化的对称对数比例尺domain
数组,返回一个新的包含两个元素的 domain 数组,它是通过按小数delta
平移 domain 的结果。parseFloat
(string, /)将输入
string
解析为浮点值。parseInt
(string, /)将输入
string
解析为整数值。peek
(array, /)返回输入
array
中的最后一个元素。pinchAngle
(event, /)返回多点触控事件前两个触点的连线的角度。
pinchDistance
(event, /)返回多点触控事件前两个触点之间的像素距离。
pluck
(array, field, /)从给定的对象
array
中检索指定field
的值。pow
(value, exponent, /)返回
value
的exponent
次幂。quantileLogNormal
(probability[, mean, stdev])对于具有指定对数
mean
和对数标准差stdev
的对数正态分布,返回给定输入probability
的分位数(累积分布函数的逆)。quantileNormal
(probability[, mean, stdev])对于具有指定
mean
和标准差stdev
的正态分布,返回给定输入probability
的分位数(累积分布函数的逆)。quantileUniform
(probability[, min, max])对于在区间 [
min
,max
] 上均匀分布,返回给定输入probability
的分位数(累积分布函数的逆)。quarter
(datetime, /)返回给定
datetime
值的年份季度(0-3,本地时间)。random
()返回范围 [0,1) 内的伪随机数。
range
(name[, group])返回命名比例尺转换的比例尺范围数组;如果未找到比例尺,则返回空数组。
regexp
(pattern[, flags])根据输入
pattern
字符串和可选的flags
创建一个正则表达式实例。replace
(string, pattern, replacement, /)返回一个新的字符串,其中
pattern
的部分或所有匹配项已被replacement
字符串替换。resolve_references
([schema])在此对象的模式或根模式的上下文中解析引用。
reverse
(array, /)返回一个新数组,其元素顺序与输入
array
相反。rgb
(*args)构造一个新的RGB颜色。
round
(value, /)将
value
四舍五入到最接近的整数。sampleLogNormal
([mean, stdev])从具有指定对数
mean
和对数标准差stdev
的单变量对数正态概率分布中返回一个样本。sampleNormal
([mean, stdev])从具有指定
mean
和标准差stdev
的单变量正态(高斯)概率分布中返回一个样本。sampleUniform
([min, max])从在区间 [
min
,max`] 上的单变量连续均匀概率分布中返回一个样本。
scale
(name, value[, group])将命名比例尺转换(或投影)应用于指定的
value
。screen
()返回 window.screen 对象,如果 Vega 未在浏览器环境中运行,则返回 `{}`。
seconds
(datetime, /)返回给定
datetime
值的秒分量(本地时间)。sequence
(*args)返回包含数字算术序列的数组。
sin
(value, /)三角函数的正弦(sin)。
slice
(array, start[, end])返回
array
在start
和end
索引之间的部分。span
(array, /)返回
array
的跨度:最后一个元素与第一个元素的差值,即 *array[array.length-1] - array[0]*。sqrt
(value, /)平方根函数。
substring
(string, start[, end])返回
string
在start
和end
索引之间的部分。tan
(value, /)三角函数的正切(tan)。
test
(regexp[, string])根据输入
string
评估正则表达式regexp
,如果字符串匹配模式则返回true
,否则返回false
。time
(datetime, /)返回给定
datetime
值的基于 epoch 的时间戳。timeFormat
(value, specifier, /)根据本地时间,将 datetime
value
(可以是Date
对象或时间戳)格式化为字符串。timeOffset
(unit, date[, step])返回一个新的
Date
实例,该实例将给定的date
在本地时区按指定时间*单位*进行偏移。timeParse
(string, specifier, /)根据本地时间,将
string
值解析为 Date 对象。timeSequence
(unit, start, stop[, step])返回从
start
(包含)到stop
(不包含)的Date
实例数组,每个条目在本地时区按指定时间*单位*分隔。timeUnitSpecifier
(units[, specifiers])返回给定时间*单位*的时间格式指定字符串。
timezoneoffset
(datetime, /)返回给定
datetime
值从本地时区到 UTC 的时区偏移量。toBoolean
(value, /)将输入
value
强制转换为布尔值。toDate
(value, /)将输入
value
强制转换为 Date 实例。toNumber
(value, /)将输入
value
强制转换为数字。toString
(value, /)将输入
value
强制转换为布尔值。to_dict
([validate, ignore, context])返回对象的字典表示。
to_json
([validate, indent, sort_keys, ...])将此对象的 JSON 表示作为字符串输出。
treeAncestors
(name, node, /)对于具有给定
name
的层次数据集,返回从输入node 马开始,然后向上直到根节点的祖先节点数组。
treePath
(name, source, target, /)对于具有给定
name
的层次数据集,返回从source
节点 id 到target
节点 id 的最短路径。trim
(string, /)返回去除前导和尾随空白字符的修剪后的字符串。
truncate
(string, length[, align, ellipsis])将输入
string
截断到目标length
。upper
(string, /)将
string
转换为大写字母。utc
(year, month[, day, hour, min, sec, millisec])返回给定 UTC 日期的 Unix 时间戳。
utcFormat
(value, specifier, /)根据UTC时间,将 datetime
value
(可以是Date
对象或时间戳)格式化为字符串。utcOffset
(unit, date[, step])返回一个新的
Date
实例,该实例将给定的date
在 UTC 时间按指定时间*单位*进行偏移。utcParse
(value, specifier, /)根据UTC时间,将 *string* 值解析为 Date 对象。
utcSequence
(unit, start, stop[, step])返回从
start
(包含)到stop
(不包含)的Date
实例数组,每个条目在 UTC 时间按指定时间*单位*分隔。utcdate
(datetime, /)返回给定
datetime
值的月份日期(UTC时间)。utcday
(datetime, /)返回给定
datetime
值的星期几(UTC时间)。utcdayofyear
(datetime, /)返回给定
datetime
值的一年中的第几天(从 1 开始计算,UTC时间)。utchours
(datetime, /)返回给定
datetime
值的小时分量(UTC时间)。utcmilliseconds
(datetime, /)返回给定
datetime
值的毫秒分量(UTC时间)。utcminutes
(datetime, /)返回给定
datetime
值的分钟分量(UTC时间)。utcmonth
(datetime, /)返回给定
datetime
值的月份(基于零计算,UTC时间)。utcquarter
(datetime, /)返回给定
datetime
值的年份季度(0-3,UTC时间)。utcseconds
(datetime, /)返回给定
datetime
值的秒分量(UTC时间)。utcweek
(date, /)返回给定 *datetime* 在一年中的周数(UTC时间)。
utcyear
(datetime, /)返回给定
datetime
值的年份(UTC时间)。validate
(instance[, schema])在根模式的上下文中,根据类模式验证实例。
validate_property
(name, value[, schema])在根模式的上下文中,根据属性模式验证属性。
warn
(value1[, value2])记录警告消息并返回最后一个参数。
week
(date, /)返回给定 *datetime* 在一年中的周数(本地时间)。
windowSize
()返回当前窗口尺寸(
[window.innerWidth, window.innerHeight]
),如果 Vega 未在浏览器环境中运行,则返回[undefined, undefined]
。x
([item])返回当前事件的 x 坐标。
xy
([item])将当前事件的 x 和 y 坐标作为包含两个元素的数组返回。
y
([item])返回当前事件的 y 坐标。
year
(datetime, /)返回给定
datetime
值的年份(本地时间)。zoomLinear
(domain, anchor, scaleFactor, /)给定一个包含数字或 datetime 值的线性比例尺
domain
数组,返回一个新的包含两个元素的 domain 数组,它是通过以提供的分数anchor
为中心,按scaleFactor
缩放 domain 的结果。zoomLog
(domain, anchor, scaleFactor, /)给定一个包含数字或 datetime 值的对数比例尺
domain
数组,返回一个新的包含两个元素的 domain 数组,它是通过以提供的分数anchor
为中心,按scaleFactor
缩放 domain 的结果。zoomPow
(domain, anchor, scaleFactor, exponent, /)给定一个包含数字或 datetime 值以及给定
exponent
的幂比例尺domain
数组,返回一个新的包含两个元素的 domain 数组,它是通过以提供的分数anchor
为中心,按scaleFactor
缩放 domain 的结果。zoomSymlog
(domain, anchor, scaleFactor, ...)给定一个包含数字或 datetime 值并由给定
constant
参数化的对称对数比例尺domain
数组,返回一个新的包含两个元素的 domain 数组,它是通过以提供的分数anchor
为中心,按scaleFactor
缩放 domain 的结果。