Canvas 函数参考
Elastic Stack 无服务器
在幕后,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
如果所有条件都满足,则返回 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
参数 | 类型 | 描述 |
---|---|---|
未命名 * † 别名: condition |
布尔值 |
要检查的条件。 |
返回: boolean
在核心类型(包括 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
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: column |
string |
要更改的列的名称。 |
名称 |
string |
结果列名。留空则不重命名。 |
类型 |
string |
要将列转换为的类型。留空则不更改类型。 |
返回: datatable
如果至少满足一个条件,则返回 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
参数 | 类型 | 描述 |
---|---|---|
未命名 * † 别名: condition |
布尔值 |
要检查的条件。 |
返回: boolean
创建一个具有单个值的 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
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: name |
string |
要给列提供的名称。 默认值: "value" |
返回: datatable
检索 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 |
要检索的资源的 ID。 |
返回: string
配置可视化的轴。仅与 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 轴
配置为显示在 right
。
接受: null
参数 | 类型 | 描述 |
---|---|---|
最大值 |
number 、string 、null |
轴中显示的最大值。必须是数字、自 epoch 以来的毫秒为单位的日期或 ISO8601 字符串。 |
最小值 |
number 、string 、null |
轴中显示的最小值。必须是数字、自 epoch 以来的毫秒为单位的日期或 ISO8601 字符串。 |
位置 |
string |
轴标签的位置。例如,"top" 、"bottom" 、"left" 或 "right" 。默认值: "left" |
显示 |
布尔值 |
显示轴标签? 默认值: true |
刻度大小 |
number 、null |
每个刻度之间的增量大小。仅用于 number 轴。 |
返回: axisConfig
构建一个 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
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: when |
any |
与上下文进行比较以查看它们是否相等的值。当还指定了 if 参数时,将忽略 when 参数。 |
if |
布尔值 |
此值指示是否满足条件。当同时提供 if 参数和 when 参数时,if 参数将覆盖 when 参数。 |
then * |
any |
如果满足条件则返回的值。 |
返回: case
清除上下文,并返回 null
。
接受: null
返回: null
在控制台中输出输入。此函数用于调试目的
表达式语法
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
返回: 取决于您的输入和参数
包含或排除 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
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: include |
string |
要在 datatable 中保留的以逗号分隔的列名列表。 |
排除 |
string |
要从 datatable 中删除的以逗号分隔的列名列表。 |
返回: datatable
将上下文与指定值进行比较以确定 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
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: op |
string |
要在比较中使用的运算符:"eq" (等于)、"gt" (大于)、"gte" (大于或等于)、"lt" (小于)、"lte" (小于或等于)、"ne" 或 "neq" (不等于)。默认值: "eq" |
to 别名: b 、this |
any |
与上下文进行比较的值。 |
返回: boolean
创建一个对象,用于设置元素容器的样式,包括背景、边框和不透明度。
表达式语法
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
参数 | 类型 | 描述 |
---|---|---|
backgroundColor |
string |
有效的 CSS 背景颜色。 |
backgroundImage |
string |
有效的 CSS 背景图像。 |
backgroundRepeat |
string |
有效的 CSS 背景重复。 默认值: "no-repeat" |
backgroundSize |
string |
有效的 CSS 背景大小。 默认值: "contain" |
border |
string |
有效的 CSS 边框。 |
borderRadius |
string |
圆角时要使用的像素数。 |
opacity |
数字 |
介于 0 和 1 之间的数字,表示元素的透明度。 |
overflow |
string |
有效的 CSS 溢出。 默认值: "hidden" |
padding |
string |
内容与边框的距离(以像素为单位)。 |
返回: containerStyle
返回您传递给它的任何内容。当您需要将上下文用作子表达式中函数的参数时,这非常有用。
表达式语法
context
代码示例
date
| formatdate "LLLL"
| markdown "Last updated: " {context}
| render
使用 context
函数允许我们将上一个函数的输出或上下文作为值传递给下一个函数中的参数。在这里,我们从上一个函数获取格式化的日期字符串,并将其作为 content
传递给 markdown 元素。
接受: any
返回: 取决于您的输入和参数
创建一个包含列列表和一个或多个空行的数据表。要填充行,请使用 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
参数 | 类型 | 描述 |
---|---|---|
ids † |
string |
按位置顺序生成的列 ID。ID 代表行中的键。 |
names † |
string |
按位置顺序生成的列名。名称不要求唯一,如果未提供,则默认为 ID。 |
rowCount |
数字 |
要添加到表中的空行数,稍后将分配值 默认值: 1 |
返回: datatable
从 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
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: data |
string |
要使用的 CSV 数据。 |
delimiter |
string |
数据分隔字符。 |
newline |
string |
行分隔字符。 |
返回: datatable
返回当前时间,或从指定的字符串解析的时间,以自 epoch 以来的毫秒数表示。
表达式语法
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
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: value |
string |
一个可选的日期字符串,它被解析为自 epoch 以来的毫秒数。日期字符串可以是有效的 JavaScript Date 输入,也可以是使用 format 参数解析的字符串。必须是 ISO8601 字符串,或者您必须提供格式。 |
format |
string |
MomentJS 格式,用于解析指定的日期字符串。有关更多信息,请参见 https://moment.js.cn/docs/#/displaying/。 |
返回值: number
一个示例数据集,其中包含项目 CI 时间以及用户名、国家和运行阶段。
表达式语法
demodata
demodata "ci"
demodata type="shirts"
代码示例
kibana
| selectFilter
| demodata
| table
| render
demodata
是一个模拟数据集,您可以使用它在 Canvas 中开始尝试。
接受: filter
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: type |
string |
要使用的演示数据集的名称。 默认值: "ci" |
返回: datatable
执行多个子表达式,然后返回原始上下文。用于运行产生动作或副作用的函数,而不改变原始上下文。
接受: any
参数 | 类型 | 描述 |
---|---|---|
未命名 † 别名: exp 、expression 、fn 、function |
any |
要执行的子表达式。这些子表达式的返回值在根管道中不可用,因为此函数仅返回原始上下文。 |
返回: 取决于您的输入和参数
配置一个下拉筛选器控件元素。
表达式语法
dropdownControl valueColumn=project filterColumn=project
dropdownControl valueColumn=agent filterColumn=agent.keyword filterGroup=group1
代码示例
demodata
| dropdownControl valueColumn=project filterColumn=project
| render
这将创建一个下拉筛选器元素。它需要一个数据源,并使用给定的 valueColumn
(即 project
)中的唯一值,并将筛选器应用于 project
列。注意:对于 Elasticsearch 数据源,filterColumn
应指向一个 keyword 类型字段。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
filterColumn * |
string |
您要筛选的列或字段。 |
filterGroup |
string |
筛选器的组名。 |
labelColumn |
string |
要在下拉控件中用作标签的列或字段 |
valueColumn * |
string |
从中提取下拉控件唯一值的列或字段。 |
返回值: render
返回带有提供的配置的可嵌入对象
接受: filter
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: config |
string |
base64 编码的可嵌入输入对象 |
type * |
string |
可嵌入对象的类型 |
返回值: embeddable
返回上下文是否等于该参数。
表达式语法
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
这会将 project 列中所有不等于 "kibana"
或 "elasticsearch"
的值更改为 "other"
。
接受: boolean
、number
、string
、null
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: value |
boolean 、number 、string 、null |
与上下文进行比较的值。 |
返回: boolean
查询 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
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: q 、query |
string |
Lucene 查询字符串。 默认值: "-_index:.kibana" |
index 别名: dataView |
string |
索引或数据视图。例如,"logstash-*" 。默认值: "_all" |
返回值: number
查询 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
索引中检索前 10000 个文档数据,按 order_date
升序排序,并且仅请求 customer_gender
、taxful_total_price
和 order_date
字段。
接受: filter
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: q 、query |
string |
Lucene 查询字符串。 默认值: "-_index:.kibana" |
count |
数字 |
要检索的文档数。为了获得更好的性能,请使用较小的数据集。 默认值: 1000 |
fields |
string |
以逗号分隔的字段列表。为了获得更好的性能,请使用更少的字段。 |
index 别名: dataView |
string |
索引或数据视图。例如,"logstash-*" 。默认值: "_all" |
metaFields |
string |
以逗号分隔的元字段列表。例如,"_index,_type" 。 |
sort |
string |
排序方向格式为 "field, direction" 。例如,"@timestamp, desc" 或 "bytes, asc" 。 |
返回: datatable
使用 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
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: q 、query |
string |
Elasticsearch SQL 查询。 |
count |
数字 |
要检索的文档数。为了获得更好的性能,请使用较小的数据集。 默认值: 1000 |
parameter †别名: param |
string 、number 、boolean |
要传递给 SQL 查询的参数。 |
timeField 别名: timeField |
string |
要在时间范围筛选器中使用的时间字段,该筛选器在上下文中设置。 |
timezone 别名: tz |
string |
用于日期操作的时区。有效的 ISO8601 格式和 UTC 偏移量均有效。 默认值: "UTC" |
返回: datatable
创建一个筛选器,该筛选器将给定的列与精确值匹配。
表达式语法
exactly "state" value="running"
exactly "age" value=50 filterGroup="group2"
exactly column="project" value="beats"
接受: filter
参数 | 类型 | 描述 |
---|---|---|
column *别名: c 、field |
string |
您要筛选的列或字段。 |
filterGroup |
string |
筛选器的组名。 |
value *别名: v 、val |
string |
要精确匹配的值,包括空格和大小写。 |
返回值: filter
根据子表达式的返回值筛选 datatable
中的行。
表达式语法
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
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: exp 、expression 、fn 、function |
布尔值 |
要传递到 datatable 中每一行的表达式。该表达式应返回一个 boolean 。 true 值保留该行,false 值删除该行。 |
返回: datatable
聚合来自工作区中的元素筛选器,供其他地方使用,通常是数据源。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
将现有筛选器设置为上下文,并接受一个 group
参数来选择特定的筛选器组。将 ungrouped
设置为 true
将选择不使用全局筛选器。
接受: null
参数 | 类型 | 描述 |
---|---|---|
未命名 † 别名: group |
string |
要使用的筛选器组的名称。 |
ungrouped 别名: nogroup 、nogroups |
布尔值 |
排除属于筛选器组的筛选器吗? 默认值: false |
返回值: filter
创建一个字体样式。
表达式语法
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
参数 | 类型 | 描述 |
---|---|---|
align |
string |
水平文本对齐方式。 默认值: ${ theme "font.align" default="left" } |
color |
string |
文本颜色。 默认值: ${ theme "font.color" } |
family |
string |
可接受的 CSS web 字体字符串 默认值: ${ theme "font.family" default="'Open Sans', Helvetica, Arial, sans-serif" } |
italic |
布尔值 |
将文本设置为斜体吗? 默认值: ${ theme "font.italic" default=false } |
lHeight 别名: lineHeight |
number 、null |
以像素为单位的行高 默认值: ${ theme "font.lHeight" } |
size |
数字 |
字体大小 默认值: ${ theme "font.size" default=14 } |
sizeUnit |
string |
字体大小单位 默认值: "px" |
underline |
布尔值 |
为文本添加下划线吗? 默认值: ${ theme "font.underline" default=false } |
weight |
string |
字体粗细。例如,"normal" 、"bold" 、"bolder" 、"lighter" 、"100" 、"200" 、"300" 、"400" 、"500" 、"600" 、"700" 、"800" 或 "900" 。默认值: ${ theme "font.weight" default="normal" } |
返回值: style
使用 MomentJS 格式化 ISO8601 日期字符串或自 epoch 以来以毫秒为单位的日期。请参见 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 格式将 time
字段中的日期转换为类似于 "Jan ‘19"
、"Feb ‘19"
等的字符串。
接受: number
、string
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: format |
string |
MomentJS 格式。例如,"MM/DD/YYYY" 。请参见 https://moment.js.cn/docs/#/displaying/。 |
返回: string
使用 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
函数相同的 context
,即 math
函数的输出。它将值格式化为百分比。
接受: number
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: format |
string |
Numeral 模式格式字符串。例如,"0.0a" 或 "0%" 。 |
返回: string
从 datatable
中获取单个单元格。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: c 、column |
string |
从中获取值的列的名称。如果未提供,则从第一列检索值。 |
row 别名: r |
数字 |
行号,从 0 开始。 默认值: 0 |
返回: 取决于您的输入和参数
返回上下文是否大于该参数。
接受: number
、string
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: value |
number 、string |
与上下文进行比较的值。 |
返回: boolean
返回上下文是否大于或等于该参数。
接受: number
、string
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: value |
number 、string |
与上下文进行比较的值。 |
返回: boolean
从 datatable
中检索前 N 行。另请参见 tail
。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: count |
数字 |
要从 datatable 的开头检索的行数。默认值: 1 |
返回: datatable
执行条件逻辑。
接受: any
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: condition |
布尔值 |
true 或 false ,指示是否满足条件,通常由子表达式返回。如果未指定,则返回原始上下文。 |
else |
any |
当条件为 false 时的返回值。如果未指定且未满足条件,则返回原始上下文。 |
then |
any |
当条件为 true 时的返回值。如果未指定且满足条件,则返回原始上下文。 |
返回: 取决于您的输入和参数
显示图像。提供图像资源作为 base64
数据 URL,或传入子表达式。
接受: null
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: dataurl 、url |
string 、null |
图像的 HTTP(S) URL 或 base64 数据 URL。默认值: null |
mode |
string |
"contain" 显示整个图像,缩放以适应。"cover" 使用图像填充容器,根据需要从侧面或底部裁剪。"stretch" 将图像的高度和宽度调整为容器的 100%。默认值: "contain" |
返回值: image
将 datatable
中各行的值连接成一个字符串。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: column |
string |
从中提取值的列或字段。 |
distinct |
布尔值 |
仅提取唯一值? 默认值: true |
引号 |
string |
用于包裹每个提取值的引号字符。 默认值: "'" |
分隔符 别名: delimiter , sep |
string |
插入在每个提取值之间的分隔符。 默认值: "," |
返回: string
获取 kibana 全局上下文
接受: kibana_context
、null
返回值: kibana_context
使用浏览器的地理位置 API 查找您当前的位置。性能可能有所不同,但相当准确。请参阅 https://mdn.org.cn/en-US/docs/Web/API/Navigator/geolocation。如果您计划生成 PDF,请不要使用 location
,因为此函数需要用户输入。
接受: null
返回: datatable
返回 context 是否小于参数。
接受: number
、string
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: value |
number 、string |
与上下文进行比较的值。 |
返回: boolean
返回 context 是否小于或等于参数。
接受: number
、string
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: value |
number 、string |
与上下文进行比较的值。 |
返回: boolean
返回一个包含地图中心坐标和缩放级别的对象。
接受: null
参数 | 类型 | 描述 |
---|---|---|
lat * |
数字 |
地图中心的纬度 |
lon * |
数字 |
地图中心的经度 |
zoom * |
数字 |
地图的缩放级别 |
返回值: mapCenter
添加一个根据其他列计算结果得出的列。只有在您提供参数时才会进行更改。另请参阅 alterColumn
和 staticColumn
。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: column , name |
string |
结果列的名称。名称不要求是唯一的。 |
copyMetaFrom |
string 、null |
如果设置,指定列 ID 的 meta 对象将复制到指定的目标列。如果该列不存在,则会静默失败。 默认值: null |
expression *别名: exp , fn , function |
boolean 、number 、string 、null |
在每一行上执行的表达式,提供一个单行 datatable 上下文并返回单元格值。 |
id |
string 、null |
结果列的可选 ID。如果未提供 ID,则将通过提供的 name 参数从现有列中查找 ID。如果尚不存在具有此名称的列,则会将具有此名称和相同 ID 的新列添加到表中。 默认值: null |
返回: datatable
添加一个渲染 Markdown 文本的元素。
对于单个数字、指标和文本段落,请使用 markdown
函数。
接受: datatable
, null
参数 | 类型 | 描述 |
---|---|---|
未命名 † 别名: content , expression |
string |
包含 Markdown 的文本字符串。要连接,请多次传递 string 函数。默认值: "" |
font |
style |
内容的 CSS 字体属性。例如,“font-family”或“font-weight”。 默认值: ${font} |
openLinksInNewTab |
布尔值 |
用于在新选项卡中打开链接的 true 或 false 值。默认值为 false 。设置为 true 将在新选项卡中打开所有链接。默认值: false |
返回值: render
使用 number
或 datatable
作为 *context* 来解释 TinyMath
数学表达式。 datatable
列可通过其列名访问。如果 *context* 是数字,则可作为 value
使用。
接受: number
, datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: expression |
string |
已评估的 TinyMath 表达式。请参阅 canvas-tinymath-functions.md。 |
onError |
string |
如果 TinyMath 评估失败或返回 NaN,则返回值由 onError 指定。当为 'throw' 时,它将抛出异常,终止表达式执行(默认)。 |
返回: 取决于您的输入和参数
通过在每一行上评估 TinyMath
来添加列。此函数针对数学进行了优化,并且比在 mapColumn
中使用数学表达式执行得更好。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: column , name |
string |
结果列的名称。名称不要求是唯一的。 |
未命名 别名: expression |
string |
已评估的 TinyMath 表达式。请参阅 canvas-tinymath-functions.md。 |
castColumns † |
string |
在应用公式之前转换为数字的列 ID。 |
copyMetaFrom |
string 、null |
如果设置,指定列 ID 的 meta 对象将复制到指定的目标列。如果该列不存在,则会静默失败。 默认值: null |
id * |
string |
结果列的 ID。必须是唯一的。 |
onError |
string |
如果 TinyMath 评估失败或返回 NaN,则返回值由 onError 指定。当为 'throw' 时,它将抛出异常,终止表达式执行(默认)。 |
返回: datatable
在标签上显示一个数字。
接受: number
, string
, null
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: description , label , text |
string |
描述指标的文本。 默认值: "" |
labelFont |
style |
标签的 CSS 字体属性。例如,font-family 或 font-weight 。默认值: ${font size=14 family="'Open Sans', Helvetica, Arial, sans-serif" color="#000000" align=center} |
metricFont |
style |
指标的 CSS 字体属性。例如,font-family 或 font-weight 。默认值: ${font size=48 family="'Open Sans', Helvetica, Arial, sans-serif" color="#000000" align=center lHeight=48} |
metricFormat 别名: format |
string |
Numeral 模式格式字符串。例如,"0.0a" 或 "0%" 。 |
返回值: render
返回 context 是否不等于参数。
接受: boolean
、number
、string
、null
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: value |
boolean 、number 、string 、null |
与上下文进行比较的值。 |
返回: boolean
创建调色板。
接受: null
参数 | 类型 | 描述 |
---|---|---|
未命名 † 别名: color |
string |
调色板颜色。接受 HTML 颜色名称、HEX、HSL、HSLA、RGB 或 RGBA。 |
continuity |
string |
默认值:"above" |
gradient |
布尔值 |
在支持的情况下创建渐变调色板? 默认值: false |
range |
string |
默认值:"percent" |
rangeMax |
数字 |
|
rangeMin |
数字 |
|
reverse |
布尔值 |
反转调色板? 默认值: false |
stop † |
数字 |
调色板颜色停止。使用时,它必须与每种颜色关联。 |
返回值: palette
配置饼图元素。
接受: pointseries
参数 | 类型 | 描述 |
---|---|---|
font |
style |
标签的 CSS 字体属性。例如,font-family 或 font-weight 。默认值: ${font} |
hole |
数字 |
在饼图中绘制一个孔,介于 0 和 100 之间,作为饼图半径的百分比。默认值: 0 |
labelRadius |
数字 |
用作标签圆半径的容器区域的百分比。 默认值: 100 |
labels |
布尔值 |
显示饼图标签? 默认值: true |
legend |
string , boolean |
图例位置。例如,"nw" 、"sw" 、"ne" 、"se" 或 false 。当为 false 时,图例将被隐藏。默认值: false |
palette |
palette |
用于描述在此饼图中使用颜色的 palette 对象。默认值: ${palette} |
radius |
string , number |
饼图的半径,以可用空间的百分比表示,介于 0 和 1 之间。要自动设置半径,请使用 "auto" 。默认值: "auto" |
seriesStyle † |
seriesStyle |
特定系列的样式 |
tilt |
数字 |
倾斜的百分比,其中 1 是完全垂直,而 0 是完全平坦。默认值: 1 |
返回值: render
配置图表元素。
接受: pointseries
参数 | 类型 | 描述 |
---|---|---|
defaultStyle |
seriesStyle |
用于每个系列的默认样式。 默认值: ${seriesStyle points=5} |
font |
style |
标签的 CSS 字体属性。例如,font-family 或 font-weight 。默认值: ${font} |
legend |
string , boolean |
图例位置。例如,"nw" 、"sw" 、"ne" 、"se" 或 false 。当为 false 时,图例将被隐藏。默认值: "ne" |
palette |
palette |
用于描述在此图表中使用颜色的 palette 对象。默认值: ${palette} |
seriesStyle † |
seriesStyle |
特定系列的样式 |
xaxis |
boolean , axisConfig |
轴配置。当为 false 时,轴将被隐藏。默认值: true |
yaxis |
boolean , axisConfig |
轴配置。当为 false 时,轴将被隐藏。默认值: true |
返回值: render
通过指定列的唯一值细分 datatable
,并将生成的表传递到表达式中,然后合并每个表达式的输出。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
by † |
string |
用于细分 datatable 的列。 |
expression †别名: exp , fn , function |
datatable |
将每个生成的 datatable 传递到的表达式。提示:表达式必须返回 datatable 。使用 as 将文本转换为 datatable 。多个表达式必须返回相同数量的行。如果需要返回不同的行数,请管道传输到另一个 ply 实例。如果多个表达式返回具有相同名称的列,则最后一个表达式获胜。 |
返回: datatable
将 datatable
转换为点序列模型。目前,我们通过查找 TinyMath
表达式来区分度量和维度。请参阅 canvas-tinymath-functions.md。如果在参数中输入 TinyMath
表达式,则我们将该参数视为度量,否则将其视为维度。维度组合起来创建唯一的键。然后使用指定的 TinyMath
函数通过这些键对度量进行去重
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
color |
string |
用于确定标记颜色的表达式。 |
size |
string |
标记的大小。仅适用于支持的元素。 |
text |
string |
要在标记上显示的文本。仅适用于支持的元素。 |
x |
string |
沿 X 轴的值。 |
y |
string |
沿 Y 轴的值。 |
返回值: pointseries
配置进度元素。
接受: number
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: shape |
string |
选择 "gauge" 、"horizontalBar" 、"horizontalPill" 、"semicircle" 、"unicorn" 、"verticalBar" 、"verticalPill" 或 "wheel" 。默认值: "gauge" |
barColor |
string |
背景条的颜色。 默认值: "#f0f0f0" |
barWeight |
数字 |
背景条的粗细。 默认值: 20 |
font |
style |
标签的 CSS 字体属性。例如,font-family 或 font-weight 。默认值: ${font size=24 family="'Open Sans', Helvetica, Arial, sans-serif" color="#000000" align=center} |
label |
boolean , string |
要显示或隐藏标签,请使用 true 或 false 。或者,提供一个字符串以显示为标签。默认值: true |
最大值 |
数字 |
进度元素的最大值。 默认值: 1 |
valueColor |
string |
进度条的颜色。 默认值: "#1785b0" |
valueWeight |
数字 |
进度条的粗细。 默认值: 20 |
返回值: render
从上下文中删除过滤器
接受: kibana_context
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: group |
string |
仅删除属于提供的组的过滤器 |
from |
string |
仅删除提供的 ID 拥有的过滤器 |
ungrouped 别名: nogroup 、nogroups |
布尔值 |
是否应删除没有组的过滤器 默认值: false |
返回值: kibana_context
将 *context* 渲染为特定元素并设置元素级别的选项,例如背景和边框样式。
接受: render
参数 | 类型 | 描述 |
---|---|---|
as |
string |
要渲染的元素类型。您可能需要一个专门的函数,例如 plot 或 shape 。 |
containerStyle |
containerStyle |
容器的样式,包括背景、边框和不透明度。 默认值: ${containerStyle} |
css |
string |
要限定到元素的任何自定义 CSS 块。 默认值: ".canvasRenderEl${}" |
返回值: render
配置重复图像元素。
接受: number
参数 | 类型 | 描述 |
---|---|---|
emptyImage |
string 、null |
使用此图像填充元素的 *context* 和 max 参数之间的差值。提供图像资产作为 base64 数据 URL,或者传入子表达式。默认值: null |
image |
string 、null |
要重复的图像。提供一个图像资源作为 base64 数据 URL,或传入一个子表达式。默认值: null |
最大值 |
number 、null |
图像可以重复的最大次数。 默认值: 1000 |
size |
数字 |
图像的最大高度或宽度,以像素为单位。当图像高度大于宽度时,此函数限制高度。 默认值: 100 |
返回值: render
使用正则表达式替换字符串的某些部分。
接受:string
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: pattern , regex |
string |
JavaScript 正则表达式的文本或模式。例如,"[aeiou]" 。你可以在这里使用捕获组。 |
标志 别名: modifiers |
string |
指定标志。参阅 https://mdn.org.cn/en-US/docs/Web/JavaScript/Reference/Global_Objects/RegExp。 默认值: "g" |
替换 |
string |
用于替换字符串中匹配部分的文本。捕获组可以通过其索引访问。例如,"$1" 。默认值: "" |
返回: string
配置图像显示元素。
接受: number
参数 | 类型 | 描述 |
---|---|---|
emptyImage |
string 、null |
可选的背景图像,用于在其上显示。提供一个图像资源作为 base64 数据 URL,或传入一个子表达式。默认值: null |
image |
string 、null |
要显示的图像。提供一个图像资源作为 base64 数据 URL,或传入一个子表达式。默认值: null |
原点 |
string |
图像填充开始的位置。例如,"top" 、"bottom" 、"left" 或 right。默认值: "bottom" |
返回值: render
使用 MomentJS 格式化字符串对自 epoch 后的毫秒数进行舍入,并返回自 epoch 后的毫秒数。
接受: number
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: format |
string |
用于分桶的 MomentJS 格式。例如,"YYYY-MM" 舍入到月份。参阅 https://moment.js.cn/docs/#/displaying/。 |
返回值: number
返回行数。与 ply
结合使用,以获取唯一列值或唯一列值组合的计数。
接受: datatable
返回值: number
从上下文中选择过滤器
接受: kibana_context
参数 | 类型 | 描述 |
---|---|---|
未命名 † 别名: group |
string |
仅选择属于提供的组的过滤器 |
from |
string |
仅选择属于提供的 ID 的过滤器 |
ungrouped 别名: nogroup 、nogroups |
布尔值 |
是否应包含没有组的过滤器 默认值: false |
返回值: kibana_context
创建一个用于描述图表上系列属性的对象。在图表函数(如 plot
或 pie
)中使用 seriesStyle
。
接受: null
参数 | 类型 | 描述 |
---|---|---|
条形 |
数字 |
条形的宽度。 |
color |
string |
线条颜色。 |
填充 |
number , boolean |
是否应该填充这些点? 默认值: false |
水平条形 |
布尔值 |
将图表中的条形方向设置为水平方向。 |
label |
string |
要设置样式的系列的名称。 |
线条 |
数字 |
线条的宽度。 |
点 |
数字 |
线上点的大小。 |
堆叠 |
number 、null |
指定是否应堆叠该系列。该数字是堆栈 ID。具有相同堆栈 ID 的系列会堆叠在一起。 |
返回:seriesStyle
创建形状。
接受: null
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: shape |
string |
选择一个形状。 默认值: "square" |
border 别名: stroke |
string |
用于勾勒形状轮廓的 SVG 颜色。 |
边框宽度 别名: strokeWidth |
数字 |
边框的粗细。 默认值: 0 |
填充 |
string |
用于填充形状的 SVG 颜色。 默认值: "black" |
保持纵横比 |
布尔值 |
保持形状的原始纵横比? 默认值: false |
返回: 取决于您的输入和参数
按指定的列对 datatable
进行排序。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: by , column |
string |
要排序的列。如果未指定,则按第一列对 datatable 进行排序。 |
reverse |
布尔值 |
反转排序顺序。如果未指定,则按升序对 datatable 进行排序。默认值: false |
返回: datatable
添加一个列,该列在每一行中都具有相同的静态值。另请参阅 alterColumn
、mapColumn
和 mathColumn
。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: column , name |
string |
新列的名称。 |
值 |
string , number , boolean , null |
要插入新列中每一行的值。提示:使用子表达式将其他列汇总到静态值中。 默认值: null |
返回: datatable
将所有参数连接成一个字符串。
接受: null
参数 | 类型 | 描述 |
---|---|---|
未命名 † 别名: value |
string 、number 、boolean |
要连接成一个字符串的值。在需要的地方包括空格。 |
返回: string
使用多个条件执行条件逻辑。另请参阅 case
,它构建一个 case
以传递给 switch
函数。
接受: any
参数 | 类型 | 描述 |
---|---|---|
未命名 * † 别名: case |
case |
要检查的条件。 |
默认 别名: finally |
any |
当不满足任何条件时返回的值。如果未指定且不满足任何条件,则返回原始上下文。 |
返回: 取决于您的输入和参数
配置表格元素。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
font |
style |
表格内容使用的 CSS 字体属性。例如,font-family 或 font-weight 。默认值: ${font} |
分页 |
布尔值 |
显示分页控件?当为 false 时,仅显示第一页。默认值: true |
每页 |
数字 |
每页要显示的行数。 默认值: 10 |
显示标题 |
布尔值 |
显示或隐藏标题行,其中包含每列的标题。 默认值: true |
返回值: render
从 datatable
的末尾检索最后 N 行。另请参阅 head
。
接受: datatable
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: count |
数字 |
要从 datatable 的末尾检索的行数。默认值: 1 |
返回: datatable
创建一个时间过滤器,用于查询数据源。
接受: filter
参数 | 类型 | 描述 |
---|---|---|
列 别名: c 、field |
string |
您要筛选的列或字段。 默认值: "@timestamp" |
filterGroup |
string |
过滤器的组名 |
from 别名: f , start |
string |
范围的开始,采用 ISO8601 或 Elasticsearch datemath 格式 |
to 别名: end , t |
string |
范围的结束,采用 ISO8601 或 Elasticsearch datemath 格式 |
返回值: filter
配置时间过滤器控制元素。
接受: null
参数 | 类型 | 描述 |
---|---|---|
列 别名: c 、field |
string |
您要筛选的列或字段。 默认值: "@timestamp" |
紧凑 |
布尔值 |
将时间过滤器显示为一个按钮,该按钮会触发一个弹出框。 默认值: true |
filterGroup |
string |
筛选器的组名。 |
返回值: render
使用 Timelion 从多个源提取一个或多个时间序列。
接受: filter
参数 | 类型 | 描述 |
---|---|---|
未命名 别名: q 、query |
string |
Timelion 查询 默认值: ".es(*)" |
from |
string |
时间范围开始的 Elasticsearch datemath 字符串。默认值: "now-1y" |
间隔 |
string |
时间序列的桶间隔。 默认值: "auto" |
timezone |
string |
时间范围的时区。参阅 https://moment.js.cn/timezone/。 默认值: "UTC" |
to |
string |
时间范围结束的 Elasticsearch datemath 字符串。默认值: "now" |
返回: datatable
表示时间跨度的对象。
接受: null
参数 | 类型 | 描述 |
---|---|---|
from * |
string |
时间范围的开始 |
to * |
string |
时间范围的结束 |
返回:timerange
将上下文的类型显式地从一种类型强制转换为指定的类型。
接受: any
参数 | 类型 | 描述 |
---|---|---|
未命名 † 别名: type |
string |
表达式语言中已知的数据类型。 |
返回: 取决于您的输入和参数
返回 UI 设置参数值。
接受: any
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: parameter |
string |
参数名称。 |
默认 |
any |
如果未设置参数,则使用默认值。 |
返回: 取决于您的输入和参数
检索 URL 参数以在表达式中使用。urlparam
函数始终返回一个 string
。例如,你可以从 URL https://localhost:5601/app/canvas?myVar=20
的参数 myVar
中检索值 "20"
。
接受: null
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: param , var , variable |
string |
要检索的 URL 哈希参数。 |
默认 |
string |
当未指定 URL 参数时返回的字符串。 默认值: "" |
返回: string
更新 Kibana 全局上下文。
接受: any
参数 | 类型 | 描述 |
---|---|---|
未命名 * 别名: name |
string |
指定变量的名称。 |
返回: 取决于您的输入和参数
更新 Kibana 全局上下文。
接受: any
参数 | 类型 | 描述 |
---|---|---|
未命名 * † 别名: name |
string |
指定变量的名称。 |
value †别名: val |
any |
指定变量的值。如果未指定,则使用输入上下文。 |
返回: 取决于您的输入和参数