Canvas 函数参考
编辑Canvas 函数参考编辑
在幕后,Canvas 由强大的表达式语言驱动,该语言具有数十种函数和其他功能,包括表格转换、类型转换和子表达式。
Canvas 表达式语言还支持 TinyMath 函数,这些函数可以执行复杂的数学计算。
* 表示必填参数。
† 表示参数可以传递多次。
A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z
A编辑
all
编辑
如果满足所有条件,则返回 true
。另请参阅 any
。
表达式语法
all {neq "foo"} {neq "bar"} {neq "fizz"} all condition={gt 10} condition={lt 20}
代码示例
kibana | selectFilter | demodata | math "mean(percent_uptime)" | formatnumber "0.0%" | metric "Average uptime" metricFont={ font size=48 family="'Open Sans', Helvetica, Arial, sans-serif" color={ if {all {gte 0} {lt 0.8}} then="red" else="green" } align="center" lHeight=48 } | render
如果传递到 metric
的上下文大于或等于 0 且小于 0.8,则将指标文本的颜色设置为 "red"
。否则,颜色设置为 "green"
。
接受: null
参数 | 类型 | 描述 |
---|---|---|
未命名 * † 别名: |
|
要检查的条件。 |
返回: boolean
alterColumn
编辑
在核心类型之间转换,包括 string
、number
、null
、boolean
和 date
,并重命名列。另请参阅 mapColumn
、mathColumn
和 staticColumn
。
表达式语法
alterColumn "cost" type="string" alterColumn column="@timestamp" name="foo"
代码示例
kibana | selectFilter | demodata | alterColumn "time" name="time_in_ms" type="number" | table | render
这会将 time
列重命名为 time_in_ms
,并将列值的类型从 date
转换为 number
。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
要更改的列的名称。 |
|
|
结果列名称。保留为空则不重命名。 |
|
|
要将列转换成的类型。保留为空则不更改类型。 |
返回: datatable
any
编辑
如果至少满足一个条件,则返回 true
。另请参阅 all
。
表达式语法
any {eq "foo"} {eq "bar"} {eq "fizz"} any condition={lte 10} condition={gt 30}
代码示例
kibana | selectFilter | demodata | filterrows { getCell "project" | any {eq "elasticsearch"} {eq "kibana"} {eq "x-pack"} } | pointseries color="project" size="max(price)" | pie | render
这会过滤掉 project
字段中不包含 "elasticsearch"
、"kibana"
或 "x-pack"
的所有行。
接受: null
参数 | 类型 | 描述 |
---|---|---|
未命名 * † 别名: |
|
要检查的条件。 |
返回: boolean
as
编辑
创建一个包含单个值的 datatable
。另请参阅 getCell
。
表达式语法
as as "foo" as name="bar"
代码示例
kibana | selectFilter | demodata | ply by="project" fn={math "count(username)" | as "num_users"} fn={math "mean(price)" | as "price"} | pointseries x="project" y="num_users" size="price" color="project" | plot | render
as
将任何原始值(string
、number
、date
、null
)转换为具有单行和单列的 datatable
,并使用给定的名称(如果未提供名称,则默认为 "value"
)。当将原始值传递给仅接受 datatable
作为输入的函数时,这很有用。
在此示例中,ply
期望每个 fn
子表达式都返回一个 datatable
,以便将每个 fn
的结果合并回一个 datatable
,但在子表达式中使用 math
聚合会返回单个 math
值,然后使用 as
将其转换为 datatable
。
接受: string
、boolean
、number
、null
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
要赋予列的名称。 默认值: |
返回: datatable
asset
编辑
检索 Canvas 工作板资产对象以作为参数值提供。通常是图像。
表达式语法
asset "asset-52f14f2b-fee6-4072-92e8-cd2642665d02" asset id="asset-498f7429-4d56-42a2-a7e4-8bf08d98d114"
代码示例
image dataurl={asset "asset-c661a7cc-11be-45a1-a401-d7592ea7917a"} mode="contain" | render
使用 ID "asset-c661a7cc-11be-45a1-a401-d7592ea7917a"
存储的图像资产被传递到 image
函数的 dataurl
参数中,以显示存储的资产。
接受: null
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
要检索的资产的 ID。 |
返回: string
axisConfig
编辑
配置可视化的轴。仅与 plot
一起使用。
表达式语法
axisConfig show=false axisConfig position="right" min=0 max=10 tickSize=1
代码示例
kibana | selectFilter | demodata | pointseries x="size(cost)" y="project" color="project" | plot defaultStyle={seriesStyle bars=0.75 horizontalBars=true} legend=false xaxis={axisConfig position="top" min=0 max=400 tickSize=100} yaxis={axisConfig position="right"} | render
这会将 x 轴
设置为显示在图表的顶部,并将值的范围设置为 0-400
,刻度以 100
的间隔显示。y 轴
配置为显示在 右侧
。
接受: null
参数 | 类型 | 描述 |
---|---|---|
|
|
轴上显示的最大值。必须是数字、自纪元以来的毫秒数日期或 ISO8601 字符串。 |
|
|
轴上显示的最小值。必须是数字、自纪元以来的毫秒数日期或 ISO8601 字符串。 |
|
|
轴标签的位置。例如, 默认值: |
|
|
显示轴标签? 默认值: |
|
|
每个刻度之间的增量大小。仅用于 |
返回: axisConfig
C编辑
case
编辑
构建一个 case
,包括条件和结果,以传递给 switch
函数。
表达式语法
case 0 then="red" case when=5 then="yellow" case if={lte 50} then="green"
代码示例
math "random()" | progress shape="gauge" label={formatnumber "0%"} font={ font size=24 family="'Open Sans', Helvetica, Arial, sans-serif" align="center" color={ switch {case if={lte 0.5} then="green"} {case if={all {gt 0.5} {lte 0.75}} then="orange"} default="red" } } valueColor={ switch {case if={lte 0.5} then="green"} {case if={all {gt 0.5} {lte 0.75}} then="orange"} default="red" } | render
如果值小于或等于 0.5
,则将进度指示器的颜色和标签的颜色设置为 "green"
;如果值大于 0.5
且小于或等于 0.75
,则设置为 "orange"
;如果 none
个 case 条件得到满足,则设置为 "red"
。
接受: any
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
与 *上下文* 进行比较以查看它们是否相等的值。当还指定了 |
|
|
此值指示是否满足条件。当同时提供 |
|
|
如果满足条件,则返回的值。 |
返回: case
clear
编辑
清除 *上下文*,并返回 null
。
接受: null
返回: null
clog
编辑
在控制台中输出 *输入*。此函数用于调试目的
表达式语法
clog
代码示例
kibana | demodata | clog | filterrows fn={getCell "age" | gt 70} | clog | pointseries x="time" y="mean(price)" | plot defaultStyle={seriesStyle lines=1 fill=1} | render
这将在 filterrows
函数之前和之后在浏览器控制台中打印 datatable
对象。
接受: any
返回:取决于您的输入和参数
columns
编辑
包含或排除 datatable
中的列。当同时指定两个参数时,将首先删除排除的列。
表达式语法
columns include="@timestamp, projects, cost" columns exclude="username, country, age"
代码示例
kibana | selectFilter | demodata | columns include="price, cost, state, project" | table | render
这仅保留 demodata
数据源中的 price
、cost
、state
和 project
列,并删除所有其他列。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
要在 |
|
|
要从 |
返回: datatable
compare
编辑
将 *context* 与指定值进行比较,以确定 true
或 false
。通常与 <<if_fn>>
或 case
组合使用。这仅适用于基本类型,例如 number
、string
、boolean
、null
。另请参阅 eq
、gt
、gte
、lt
、lte
、neq
表达式语法
compare "neq" to="elasticsearch" compare op="lte" to=100
代码示例
kibana | selectFilter | demodata | mapColumn project fn={getCell project | switch {case if={compare eq to=kibana} then=kibana} {case if={compare eq to=elasticsearch} then=elasticsearch} default="other" } | pointseries size="size(cost)" color="project" | pie | render
这会将所有不属于 "kibana"
和 "elasticsearch"
的 project
值映射到 "other"
。或者,您可以使用单独的比较器函数而不是 compare。
接受: string
、number
、boolean
、null
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
要在比较中使用的运算符: 默认值: |
别名: |
|
与 *context* 进行比较的值。 |
返回: boolean
containerStyle
编辑
创建一个用于设置元素容器样式的对象,包括背景、边框和不透明度。
表达式语法
containerStyle backgroundColor="red"’ containerStyle borderRadius="50px" containerStyle border="1px solid black" containerStyle padding="5px" containerStyle opacity="0.5" containerStyle overflow="hidden" containerStyle backgroundImage={asset id=asset-f40d2292-cf9e-4f2c-8c6f-a504a25e949c} backgroundRepeat="no-repeat" backgroundSize="cover"
代码示例
shape "star" fill="#E61D35" maintainAspect=true | render containerStyle={ containerStyle backgroundColor="#F8D546" borderRadius="200px" border="4px solid #05509F" padding="0px" opacity="0.9" overflow="hidden" }
接受: null
参数 | 类型 | 描述 |
---|---|---|
|
|
有效的 CSS 背景颜色。 |
|
|
有效的 CSS 背景图像。 |
|
|
有效的 CSS 背景重复。 默认值: |
|
|
有效的 CSS 背景大小。 默认值: |
|
|
有效的 CSS 边框。 |
|
|
圆角时使用的像素数。 |
|
|
介于 0 和 1 之间的数字,表示元素的透明度。 |
|
|
有效的 CSS 溢出。 默认值: |
|
|
内容与边框的距离(以像素为单位)。 |
返回: containerStyle
context
编辑
返回您传入的任何内容。当您需要将 *context* 作为参数传递给函数作为子表达式时,这很有用。
表达式语法
context
代码示例
date | formatdate "LLLL" | markdown "Last updated: " {context} | render
使用 context
函数,我们可以将前一个函数的输出或 *context* 作为值传递给下一个函数中的参数。在这里,我们从前一个函数获取格式化的日期字符串,并将其作为 content
传递给 markdown 元素。
接受: any
返回:取决于您的输入和参数
createTable
编辑
创建一个包含列列表和 1 个或多个空行的数据表。要填充行,请使用 mapColumn
或 mathColumn
。
表达式语法
createTable id="a" id="b" createTable id="a" name="A" id="b" name="B" rowCount=5
代码示例
var_set name="logs" value={essql "select count(*) as a from kibana_sample_data_logs"} name="commerce" value={essql "select count(*) as b from kibana_sample_data_ecommerce"} | createTable ids="totalA" ids="totalB" | staticColumn name="totalA" value={var "logs" | getCell "a"} | alterColumn column="totalA" type="number" | staticColumn name="totalB" value={var "commerce" | getCell "b"} | alterColumn column="totalB" type="number" | mathColumn id="percent" name="percent" expression="totalA / totalB" | render
这将根据两个 essql
查询的结果创建一个表,并将其合并到一个表中。
接受: null
参数 | 类型 | 描述 |
---|---|---|
|
|
要按位置顺序生成的列 ID。ID 表示行中的键。 |
|
|
要按位置顺序生成的列名称。名称不需要唯一,如果未提供,则默认为 ID。 |
|
|
要添加到表的空行数,稍后将分配一个值 默认值: |
返回: datatable
csv
编辑
从 CSV 输入创建 datatable
。
表达式语法
csv "fruit, stock kiwi, 10 Banana, 5"
代码示例
csv "fruit,stock kiwi,10 banana,5" | pointseries color=fruit size=stock | pie | render
这将创建一个包含 fruit
和 stock
列的 datatable
,其中有两行。这对于快速模拟数据很有用。
接受: null
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
要使用的 CSV 数据。 |
|
|
数据分隔符。 |
|
|
行分隔符。 |
返回: datatable
D编辑
date
编辑
返回当前时间,或从指定字符串解析的时间,以自纪元以来的毫秒数表示。
表达式语法
date date value=1558735195 date "2019-05-24T21:59:55+0000" date "01/31/2019" format="MM/DD/YYYY"
代码示例
date | formatdate "LLL" | markdown {context} font={font family="Arial, sans-serif" size=30 align="left" color="#000000" weight="normal" underline=false italic=false} | render
不传递任何参数使用 date
将返回当前日期和时间。
接受: null
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
可选的日期字符串,解析为自纪元以来的毫秒数。日期字符串可以是有效的 JavaScript |
|
|
用于解析指定日期字符串的 MomentJS 格式。有关更多信息,请参阅 https://moment.js.cn/docs/#/displaying/。 |
返回: number
demodata
编辑
一个示例数据集,其中包含带有用户名、国家/地区和运行阶段的项目 CI 时间。
表达式语法
demodata demodata "ci" demodata type="shirts"
代码示例
kibana | selectFilter | demodata | table | render
demodata
是一个模拟数据集,您可以使用它在 Canvas 中开始试用。
接受: filter
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
要使用的演示数据集的名称。 默认值: |
返回: datatable
do
编辑
执行多个子表达式,然后返回原始 *context*。用于运行生成操作或副作用而不更改原始 *context* 的函数。
接受: any
参数 | 类型 | 描述 |
---|---|---|
*未命名* † 别名: |
|
要执行的子表达式。这些子表达式的返回值在根管道中不可用,因为此函数仅返回原始 *context*。 |
返回:取决于您的输入和参数
dropdownControl
编辑
配置下拉过滤器控件元素。
表达式语法
dropdownControl valueColumn=project filterColumn=project dropdownControl valueColumn=agent filterColumn=agent.keyword filterGroup=group1
代码示例
demodata | dropdownControl valueColumn=project filterColumn=project | render
这将创建一个下拉过滤器元素。它需要一个数据源,并使用给定 valueColumn
(即 project
)中的唯一值,并将过滤器应用于 project
列。注意:filterColumn
应指向 Elasticsearch 数据源的关键字类型字段。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
|
|
您要过滤的列或字段。 |
|
|
过滤器的组名。 |
|
|
要用作下拉控件中标签的列或字段 |
|
|
从中提取下拉控件的唯一值的列或字段。 |
返回: render
E编辑
embeddable
编辑
返回具有所提供配置的可嵌入对象
接受: filter
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
base64 编码的可嵌入输入对象 |
|
|
可嵌入类型 |
返回: embeddable
eq
编辑
返回 *context* 是否等于参数。
表达式语法
eq true eq null eq 10 eq "foo"
代码示例
kibana | selectFilter | demodata | mapColumn project fn={getCell project | switch {case if={eq kibana} then=kibana} {case if={eq elasticsearch} then=elasticsearch} default="other" } | pointseries size="size(cost)" color="project" | pie | render
这会将项目列中所有不等于 "kibana"
或 "elasticsearch"
的值更改为 "other"
。
接受: boolean
、number
、string
、null
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
与 *context* 进行比较的值。 |
返回: boolean
escount
编辑
在 Elasticsearch 中查询与指定查询匹配的匹配数。
表达式语法
escount index="logstash-*" escount "currency:"EUR"" index="kibana_sample_data_ecommerce" escount query="response:404" index="kibana_sample_data_logs"
代码示例
kibana | selectFilter | escount "Cancelled:true" index="kibana_sample_data_flights" | math "value" | progress shape="semicircle" label={formatnumber 0,0} font={font size=24 family="'Open Sans', Helvetica, Arial, sans-serif" color="#000000" align=center} max={filters | escount index="kibana_sample_data_flights"} | render
第一个 escount
表达式检索已取消的航班数量。第二个 escount
表达式检索航班总数。
接受: filter
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
Lucene 查询字符串。 默认值: |
别名: |
|
索引或数据视图。例如, 默认值: |
返回: number
esdocs
编辑
查询 Elasticsearch 以获取原始文档。指定要检索的字段,尤其是在您请求大量行时。
表达式语法
esdocs index="logstash-*" esdocs "currency:"EUR"" index="kibana_sample_data_ecommerce" esdocs query="response:404" index="kibana_sample_data_logs" esdocs index="kibana_sample_data_flights" count=100 esdocs index="kibana_sample_data_flights" sort="AvgTicketPrice, asc"
代码示例
kibana | selectFilter | esdocs index="kibana_sample_data_ecommerce" fields="customer_gender, taxful_total_price, order_date" sort="order_date, asc" count=10000 | mapColumn "order_date" fn={getCell "order_date" | date {context} | rounddate "YYYY-MM-DD"} | alterColumn "order_date" type="date" | pointseries x="order_date" y="sum(taxful_total_price)" color="customer_gender" | plot defaultStyle={seriesStyle lines=3} palette={palette "#7ECAE3" "#003A4D" gradient=true} | render
这将从 kibana_sample_data_ecommerce
索引中检索按 order_date
升序排序的前 10000 个文档数据,并且仅请求 customer_gender
、taxful_total_price
和 order_date
字段。
接受: filter
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
Lucene 查询字符串。 默认值: |
|
|
要检索的文档数量。为了获得更好的性能,请使用较小的数据集。 默认值: |
|
|
以逗号分隔的字段列表。为了获得更好的性能,请使用更少的字段。 |
别名: |
|
索引或数据视图。例如, 默认值: |
|
|
以逗号分隔的元字段列表。例如, |
|
|
排序方向,格式为 |
返回: datatable
essql
编辑
使用 Elasticsearch SQL 查询 Elasticsearch。
表达式语法
essql query="SELECT * FROM "logstash*"" essql "SELECT * FROM "apm*"" count=10000
代码示例
kibana | selectFilter | essql query="SELECT Carrier, FlightDelayMin, AvgTicketPrice FROM "kibana_sample_data_flights"" | table | render
这将从“kibana_sample_data_flights”索引中检索 Carrier
、FlightDelayMin
和 AvgTicketPrice
字段。
接受: kibana_context
, null
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
Elasticsearch SQL 查询。 |
|
|
要检索的文档数量。为了获得更好的性能,请使用较小的数据集。 默认值: |
别名: |
|
要传递给 SQL 查询的参数。 |
别名: |
|
要在时间范围过滤器中使用的时间字段,在上下文中设置。 |
别名: |
|
用于日期操作的时区。有效的 ISO8601 格式和 UTC 偏移量都可以使用。 默认值: |
返回: datatable
exactly
编辑
创建一个将给定列与确切值匹配的过滤器。
表达式语法
exactly "state" value="running" exactly "age" value=50 filterGroup="group2" exactly column="project" value="beats"
接受: filter
参数 | 类型 | 描述 |
---|---|---|
别名: |
|
您要过滤的列或字段。 |
|
|
过滤器的组名。 |
别名: |
|
要完全匹配的值,包括空格和大小写。 |
返回: 过滤器
F编辑
filterrows
编辑
根据子表达式的返回值过滤 数据表
中的行。
表达式语法
filterrows {getCell "project" | eq "kibana"} filterrows fn={getCell "age" | gt 50}
代码示例
kibana | selectFilter | demodata | filterrows {getCell "country" | any {eq "IN"} {eq "US"} {eq "CN"}} | mapColumn "@timestamp" fn={getCell "@timestamp" | rounddate "YYYY-MM"} | alterColumn "@timestamp" type="date" | pointseries x="@timestamp" y="mean(cost)" color="country" | plot defaultStyle={seriesStyle points="2" lines="1"} palette={palette "#01A4A4" "#CC6666" "#D0D102" "#616161" "#00A1CB" "#32742C" "#F18D05" "#113F8C" "#61AE24" "#D70060" gradient=false} | render
这使用 filterrows
仅保留来自印度 (IN
)、美国 (US
) 和中国 (CN
) 的数据。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
要传递到 |
返回: datatable
filters
编辑
聚合来自工作板的元素过滤器,以便在其他地方使用,通常是数据源。filters
已弃用,将在未来版本中删除。请改用 kibana | selectFilter
。
表达式语法
filters filters group="timefilter1" filters group="timefilter2" group="dropdownfilter1" ungrouped=true
代码示例
filters group=group2 ungrouped=true | demodata | pointseries x="project" y="size(cost)" color="project" | plot defaultStyle={seriesStyle bars=0.75} legend=false font={ font size=14 family="'Open Sans', Helvetica, Arial, sans-serif" align="left" color="#FFFFFF" weight="lighter" underline=true italic=true } | render
filters
将现有过滤器设置为上下文,并接受 组
参数以选择加入特定的过滤器组。将 未分组
设置为 true
表示选择退出使用全局过滤器。
接受: null
参数 | 类型 | 描述 |
---|---|---|
*未命名* † 别名: |
|
要使用的过滤器组的名称。 |
别名: |
|
排除属于过滤器组的过滤器? 默认值: |
返回: 过滤器
font
编辑
创建字体样式。
表达式语法
font size=12 font family=Arial font align=middle font color=pink font weight=lighter font underline=true font italic=false font lHeight=32
代码示例
kibana | selectFilter | demodata | pointseries x="project" y="size(cost)" color="project" | plot defaultStyle={seriesStyle bars=0.75} legend=false font={ font size=14 family="'Open Sans', Helvetica, Arial, sans-serif" align="left" color="#FFFFFF" weight="lighter" underline=true italic=true } | render
接受: null
参数 | 类型 | 描述 |
---|---|---|
|
|
水平文本对齐方式。 默认值: |
|
|
文本颜色。 默认值: |
|
|
可接受的 CSS Web 字体字符串 默认值: |
|
|
将文本设为斜体? 默认值: |
别名: |
|
以像素为单位的行高 默认值: |
|
|
字体大小 默认值: |
|
|
字体大小单位 默认值: |
|
|
为文本添加下划线? 默认值: |
|
|
字体粗细。例如, 默认值: |
返回: 样式
formatdate
编辑
使用 MomentJS 格式化 ISO8601 日期字符串或自纪元以来的毫秒数日期。请参阅 https://moment.js.cn/docs/#/displaying/。
表达式语法
formatdate format="YYYY-MM-DD" formatdate "MM/DD/YYYY"
代码示例
kibana | selectFilter | demodata | mapColumn "time" fn={getCell time | formatdate "MMM 'YY"} | pointseries x="time" y="sum(price)" color="state" | plot defaultStyle={seriesStyle points=5} | render
这将使用 MomentJS 格式将 时间
字段中的日期转换为类似于 “19 年 1 月”
、“19 年 2 月”
等的字符串。
接受: 数字
, 字符串
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
MomentJS 格式。例如, |
返回: string
formatnumber
编辑
使用 Numeral 模式将数字格式化为格式化的数字字符串。
表达式语法
formatnumber format="$0,0.00" formatnumber "0.0a"
代码示例
kibana | selectFilter | demodata | math "mean(percent_uptime)" | progress shape="gauge" label={formatnumber "0%"} font={font size=24 family="'Open Sans', Helvetica, Arial, sans-serif" color="#000000" align="center"} | render
formatnumber
子表达式接收与 progress
函数相同的 上下文
,即 math
函数的输出。它将值格式化为百分比。
接受: 数字
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
Numeral 模式格式字符串。例如, |
返回: string
G编辑
getCell
编辑
从 数据表
中获取单个单元格。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
要从中获取值的列的名称。如果未提供,则从第一列中检索值。 |
别名: |
|
行号,从 0 开始。 默认值: |
返回:取决于您的输入和参数
gt
编辑
返回 _上下文_ 是否大于参数。
接受: 数字
, 字符串
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
与 *context* 进行比较的值。 |
返回: boolean
gte
编辑
返回 _上下文_ 是否大于或等于参数。
接受: 数字
, 字符串
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
与 *context* 进行比较的值。 |
返回: boolean
H编辑
head
编辑
从 数据表
中检索前 N 行。另请参阅 tail
。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
要从 默认值: |
返回: datatable
I编辑
if
编辑
执行条件逻辑。
接受: any
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
指示是否满足条件的 |
|
|
条件为 |
|
|
条件为 |
返回:取决于您的输入和参数
image
编辑
显示图像。以 base64
数据 URL 的形式提供图像资产,或传入子表达式。
接受: null
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
图像的 HTTP(S) URL 或 默认值: |
|
|
默认值: |
返回: 图像
J编辑
joinRows
编辑
将 数据表
中各行的值连接成单个字符串。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
要从中提取值的列或字段。 |
|
|
仅提取唯一值? 默认值: |
|
|
用于包裹每个提取值的引号字符。 默认值: |
别名: |
|
要插入到每个提取值之间的分隔符。 默认值: |
返回: string
K编辑
kibana
编辑
获取 kibana 全局上下文
接受: kibana_context
, null
返回值: kibana_context
L编辑
location
编辑
使用浏览器的地理定位 API 查找您当前的位置。性能可能会有所不同,但相当准确。请参阅 https://mdn.org.cn/zh-CN/docs/Web/API/Navigator/geolocation。如果您打算生成 PDF,请不要使用 location
,因为此函数需要用户输入。
接受: null
返回: datatable
lt
编辑
如果 *上下文* 小于参数,则返回 true。
接受: 数字
, 字符串
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
与 *context* 进行比较的值。 |
返回: boolean
lte
编辑
如果 *上下文* 小于或等于参数,则返回 true。
接受: 数字
, 字符串
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
与 *context* 进行比较的值。 |
返回: boolean
M编辑
mapCenter
编辑
返回一个包含地图中心坐标和缩放级别的对象。
接受: null
参数 | 类型 | 描述 |
---|---|---|
|
|
地图中心的纬度 |
|
|
地图中心的经度 |
|
|
地图的缩放级别 |
返回值: mapCenter
mapColumn
编辑
添加一个计算为其他列结果的列。仅当您提供参数时才会进行更改。另请参阅 alterColumn
和 staticColumn
。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
结果列的名称。名称不需要唯一。 |
|
|
如果设置,则来自指定列 ID 的元对象将被复制到指定的目標列。如果该列不存在,则静默失败。 默认值: |
别名: |
|
一个表达式,在每一行上执行,提供单行 |
|
|
结果列的可选 ID。如果未提供 ID,则将通过提供的 name 参数从现有列中查找 ID。如果尚不存在具有此名称的列,则会将具有此名称和相同 ID 的新列添加到表中。 默认值: |
返回: datatable
markdown
编辑
添加一个渲染 Markdown 文本的元素。提示:对单个数字、指标和文本段落使用 markdown
函数。
接受: datatable
、null
参数 | 类型 | 描述 |
---|---|---|
*未命名* † 别名: |
|
包含 Markdown 的文本字符串。要连接,请多次传递 默认值: |
|
|
内容的 CSS 字体属性。例如,“font-family”或“font-weight”。 默认值: |
|
|
在新选项卡中打开链接的 true 或 false 值。默认值为 默认值: |
返回: render
math
编辑
使用 number
或 datatable
作为 *上下文* 解释 TinyMath
数学表达式。datatable
列可通过其列名获得。如果 *上下文* 是一个数字,则它可用作 value
。
接受: number
、datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
已评估的 |
|
|
如果 |
返回:取决于您的输入和参数
mathColumn
编辑
通过评估每行上的 TinyMath
来添加列。此函数针对数学进行了优化,并且比在 mapColumn
中使用数学表达式性能更好。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
结果列的名称。名称不需要唯一。 |
未命名 别名: |
|
已评估的 |
|
|
在应用公式之前转换为数字的列 ID。 |
|
|
如果设置,则来自指定列 ID 的元对象将被复制到指定的目標列。如果该列不存在,则静默失败。 默认值: |
|
|
结果列的 ID。必须唯一。 |
|
|
如果 |
返回: datatable
metric
编辑
在标签上显示一个数字。
接受: number
、string
、null
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
描述指标的文本。 默认值: |
|
|
标签的 CSS 字体属性。例如, 默认值: |
|
|
指标的 CSS 字体属性。例如, 默认值: |
别名: |
|
Numeral 模式格式字符串。例如, |
返回: render
N编辑
neq
编辑
如果 *上下文* 不等于参数,则返回 true。
接受: boolean
、number
、string
、null
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
与 *context* 进行比较的值。 |
返回: boolean
P编辑
palette
编辑
创建调色板。
接受: null
参数 | 类型 | 描述 |
---|---|---|
*未命名* † 别名: |
|
调色板颜色。接受 HTML 颜色名称、HEX、HSL、HSLA、RGB 或 RGBA。 |
|
|
默认值: |
|
|
在支持的情况下制作渐变调色板? 默认值: |
|
|
默认值: |
|
|
|
|
|
|
|
|
反转调色板? 默认值: |
|
|
调色板颜色停止。使用时,它必须与每种颜色相关联。 |
返回值: palette
pie
编辑
配置饼图元素。
接受: pointseries
参数 | 类型 | 描述 |
---|---|---|
|
|
标签的 CSS 字体属性。例如, 默认值: |
|
|
在饼图中绘制一个孔,介于 默认值: |
|
|
用作标签圆半径的容器区域百分比。 默认值: |
|
|
显示饼图标签? 默认值: |
|
|
图例位置。例如, 默认值: |
|
|
用于描述此饼图中使用的颜色的 默认值: |
|
|
饼图的半径,作为可用空间的百分比,介于 默认值: |
|
|
特定系列的样式 |
|
|
倾斜百分比,其中 默认值: |
返回: render
plot
编辑
配置图表元素。
接受: pointseries
参数 | 类型 | 描述 |
---|---|---|
|
|
用于每个系列的默认样式。 默认值: |
|
|
标签的 CSS 字体属性。例如, 默认值: |
|
|
图例位置。例如, 默认值: |
|
|
用于描述此图表中使用的颜色的 默认值: |
|
|
特定系列的样式 |
|
|
轴配置。当 默认值: |
|
|
轴配置。当 默认值: |
返回: render
ply
编辑
根据指定列的唯一值细分 datatable
,并将结果表传递给表达式,然后合并每个表达式的输出。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
|
|
用于细分 |
别名: |
|
用于传递每个结果 |
返回: datatable
pointseries
编辑
将 datatable
转换为点序列模型。目前,我们通过查找 TinyMath
表达式来区分度量和维度。请参阅 https://elastic.ac.cn/guide/en/kibana/current/canvas-tinymath-functions.html。如果在参数中输入 TinyMath
表达式,我们会将该参数视为度量,否则它就是一个维度。维度组合在一起以创建唯一键。然后使用指定的 TinyMath
函数通过这些键对度量进行去重。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
|
|
用于确定标记颜色的表达式。 |
|
|
标记的大小。仅适用于受支持的元素。 |
|
|
要在标记上显示的文本。仅适用于受支持的元素。 |
|
|
沿 X 轴的值。 |
|
|
沿 Y 轴的值。 |
返回值: pointseries
progress
编辑
配置进度元素。
接受: 数字
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
选择 默认值: |
|
|
背景条的颜色。 默认值: |
|
|
背景条的粗细。 默认值: |
|
|
标签的 CSS 字体属性。例如, 默认值: |
|
|
要显示或隐藏标签,请使用 默认值: |
|
|
进度元素的最大值。 默认值: |
|
|
进度条的颜色。 默认值: |
|
|
进度条的粗细。 默认值: |
返回: render
R编辑
removeFilter
编辑
从上下文中删除过滤器
接受: kibana_context
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
仅删除属于所提供组的过滤器 |
|
|
仅删除由所提供 ID 拥有的过滤器 |
别名: |
|
是否应删除没有组的过滤器 默认值: |
返回值: kibana_context
render
编辑
将*上下文*渲染为特定元素,并设置元素级别选项,例如背景和边框样式。
接受: render
参数 | 类型 | 描述 |
---|---|---|
|
|
|
|
|
容器的样式,包括背景、边框和不透明度。 默认值: |
|
|
要限定到元素的任何自定义 CSS 块。 默认值: |
返回: render
repeatImage
编辑
配置重复图像元素。
接受: 数字
参数 | 类型 | 描述 |
---|---|---|
|
|
使用此图像填充*上下文*和元素的 默认值: |
|
|
要重复的图像。以 默认值: |
|
|
图像可以重复的最大次数。 默认值: |
|
|
图像的最大高度或宽度(以像素为单位)。当图像的高度大于宽度时,此函数会限制高度。 默认值: |
返回: render
replace
编辑
使用正则表达式替换字符串的各个部分。
接受: string
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
JavaScript 正则表达式的文本或模式。例如, |
别名: |
|
指定标志。请参阅 https://mdn.org.cn/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp。 默认值: |
|
|
与字符串匹配部分的替换。可以通过索引访问捕获组。例如, 默认值: |
返回: string
revealImage
编辑
配置图像显示元素。
接受: 数字
参数 | 类型 | 描述 |
---|---|---|
|
|
要显示的可选背景图像。以 ``base64`` 数据 URL 的形式提供图像资产,或传入子表达式。 默认值: |
|
|
要显示的图像。以 默认值: |
|
|
开始图像填充的位置。例如, 默认值: |
返回: render
rounddate
编辑
使用 MomentJS 格式字符串对自纪元以来的毫秒数进行舍入,并返回自纪元以来的毫秒数。
接受: 数字
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
用于存储桶的 MomentJS 格式。例如, |
返回: number
rowCount
编辑
返回行数。与 ply
配合使用以获取唯一列值或唯一列值组合的计数。
接受: datatable
返回: number
S编辑
selectFilter
编辑
从上下文中选择过滤器
接受: kibana_context
参数 | 类型 | 描述 |
---|---|---|
*未命名* † 别名: |
|
仅选择属于所提供组的过滤器 |
|
|
仅选择由所提供 ID 拥有的过滤器 |
别名: |
|
是否应包含没有组的过滤器 默认值: |
返回值: kibana_context
seriesStyle
编辑
创建一个对象,用于描述图表上序列的属性。在图表函数(如 plot
或 pie
)中使用 seriesStyle
。
接受: null
参数 | 类型 | 描述 |
---|---|---|
|
|
条形的宽度。 |
|
|
线条颜色。 |
|
|
我们是否应该填充点? 默认值: |
|
|
将图表中条形的朝向设置为水平。 |
|
|
要设置样式的序列的名称。 |
|
|
线条的宽度。 |
|
|
线上点的大小。 |
|
|
指定是否应堆叠序列。该数字是堆栈 ID。具有相同堆栈 ID 的序列堆叠在一起。 |
返回值: seriesStyle
shape
编辑
创建形状。
接受: null
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
选择形状。 默认值: |
别名: |
|
形状轮廓边框的 SVG 颜色。 |
别名: |
|
边框的粗细。 默认值: |
|
|
用于填充形状的 SVG 颜色。 默认值: |
|
|
保持形状的原始纵横比? 默认值: |
返回:取决于您的输入和参数
sort
编辑
按指定列对 datatable
进行排序。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
要排序的列。如果未指定,则按第一列对 |
|
|
反转排序顺序。如果未指定,则按升序对 默认值: |
返回: datatable
staticColumn
编辑
添加一列,其中每行都具有相同的静态值。另请参阅 alterColumn
、mapColumn
和 mathColumn
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
新列的名称。 |
|
|
要在新列的每一行中插入的值。提示:使用子表达式将其他列汇总为静态值。 默认值: |
返回: datatable
string
编辑
将所有参数连接成一个字符串。
接受: null
参数 | 类型 | 描述 |
---|---|---|
*未命名* † 别名: |
|
要连接成一个字符串的值。在需要的地方包含空格。 |
返回: string
switch
编辑
使用多个条件执行条件逻辑。另请参阅 case
,它构建一个 case
传递给 switch
函数。
接受: any
参数 | 类型 | 描述 |
---|---|---|
未命名 * † 别名: |
|
要检查的条件。 |
别名: |
|
未满足任何条件时返回的值。如果未指定且未满足任何条件,则返回原始的 *context*。 |
返回:取决于您的输入和参数
T编辑
table
编辑
配置表格元素。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
|
|
表格内容的 CSS 字体属性。例如, 默认值: |
|
|
显示分页控件?当为 默认值: |
|
|
每页显示的行数。 默认值: |
|
|
显示或隐藏包含每列标题的标题行。 默认值: |
返回: render
tail
编辑
从 datatable
的末尾检索最后 N 行。另请参阅 head
。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
要从 默认值: |
返回: datatable
timefilter
编辑
创建用于查询源的时间过滤器。
接受: filter
参数 | 类型 | 描述 |
---|---|---|
别名: |
|
您要过滤的列或字段。 默认值: |
|
|
过滤器的组名 |
别名: |
|
范围的开始时间,采用 ISO8601 或 Elasticsearch |
别名: |
|
范围的结束时间,采用 ISO8601 或 Elasticsearch |
返回: 过滤器
timefilterControl
编辑
配置时间过滤器控件元素。
接受: null
参数 | 类型 | 描述 |
---|---|---|
别名: |
|
您要过滤的列或字段。 默认值: |
|
|
将时间过滤器显示为一个按钮,该按钮会触发一个弹出窗口。 默认值: |
|
|
过滤器的组名。 |
返回: render
timelion
编辑
使用 Timelion 从多个源中提取一个或多个时间序列。
接受: filter
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: |
|
Timelion 查询 默认值: |
|
|
时间范围开始时间的 Elasticsearch 默认值: |
|
|
时间序列的存储桶间隔。 默认值: |
|
|
时间范围的时区。请参阅 https://moment.js.cn/timezone/。 默认值: |
|
|
时间范围结束时间的 Elasticsearch 默认值: |
返回: datatable
timerange
编辑
表示时间跨度的对象。
接受: null
参数 | 类型 | 描述 |
---|---|---|
|
|
时间范围的开始时间 |
|
|
时间范围的结束时间 |
返回值: timerange
to
编辑
将 *context* 的类型从一种类型显式转换为指定的类型。
接受: any
参数 | 类型 | 描述 |
---|---|---|
*未命名* † 别名: |
|
表达式语言中的已知数据类型。 |
返回:取决于您的输入和参数
U编辑
uiSetting
编辑
返回 UI 设置参数值。
接受: any
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
参数名称。 |
|
|
如果未设置参数,则使用默认值。 |
返回:取决于您的输入和参数
urlparam
编辑
检索要在表达式中使用的 URL 参数。 urlparam
函数始终返回 string
。例如,您可以从 URL https://127.0.0.1:5601/app/canvas?myVar=20
中检索参数 myVar
的值 "20"
。
接受: null
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
要检索的 URL 哈希参数。 |
|
|
未指定 URL 参数时返回的字符串。 默认值: |
返回: string
V编辑
var
编辑
更新 Kibana 全局上下文。
接受: any
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: |
|
指定变量的名称。 |
返回:取决于您的输入和参数
var_set
编辑
更新 Kibana 全局上下文。
接受: any
参数 | 类型 | 描述 |
---|---|---|
未命名 * † 别名: |
|
指定变量的名称。 |
别名: |
|
指定变量的值。如果未指定,则使用输入上下文。 |
返回:取决于您的输入和参数