elasticsearch - Vega 和 Kibana - 动态时间戳标签和过滤查询
问题描述
我正在使用 Kibana 处理我的第一个 Vega 可视化。
{
$schema: https://vega.github.io/schema/vega-lite/v2.json
title: Event counts from all indexes
data: {
url: {
%context%: true
%timefield%: last_submission
index: test_info
body: {
aggs: {
time_buckets: {
date_histogram: {
field: last_submission
interval: {%autointerval%: true}
extended_bounds: {
min: {%timefilter%: "min"}
max: {%timefilter%: "max"}
}
min_doc_count: 0
}
}
}
size: 0
}
}
format: {property: "aggregations.time_buckets.buckets"}
}
mark: line
encoding: {
x: {
field: key
type: temporal
axis: {title: false}
}
y: {
field: doc_count
type: quantitative
axis: {title: "Document count"}
}
}
}
我在这里有两个问题。
1 - 由于可视化链接到 Kibana 仪表板,用户可以从主仪表板中选择不同的时间窗口。如您所见,标签始终具有完整格式。我需要根据时间窗口动态设置标签。也就是说,如果用户选择日数据,则仅显示小时,如果用户选择周数据,则显示天,依此类推。我需要做什么?
2- 我需要根据字段的特定值过滤事件并使用主仪表板的时间窗口。那可能吗?我曾尝试在 Vega 代码中添加查询过滤器,但如果我还设置了上下文和时间字段,则会出现此错误:
设置 url.body.query 时不能使用 url.%context% 和 url.%timefield%
解决方案
推荐阅读
- javascript - Vue-Cli - 如何在 index.html 中加载外部文件(从根目录中)
- wpf - Powershell WPF PerformClick() 错误
- sql - 将随机时间戳附加到日期字段,同时从今天的日期中减去天数?
- javascript - 空值没有被 jQuery/条件替换
- wso2 - 从 REST 调用调用本地身份验证器
- python - 是否有将加载的数据集保存到文本/或任何文件中的功能?
- google-cloud-platform - 将云身份添加到现有的 Google Cloud 项目
- python-3.x - 为什么while循环不工作
- r - R - writeOGR 中的错误 - NULL 未知数据类型
- mysql - 如何从多个模式中的每个表中获取最大列值?