- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我也是 Vega 和 Kibana 的新手,我试图创建一个显示主题标签及其平均极性的散点图,但是我遇到了两个方面的问题,首先是获取平均极性聚合,其次是从文档中访问主题标签文本字段。
我试图获得平均极性的代码(现在只是以时间刻度显示):
{$schema: https://vega.github.io/schema/vega-lite/v2.json
data: {
# URL object is a context-aware query to Elasticsearch
url: {
# The %-enclosed keys are handled by Kibana to modify the query
# before it gets sent to Elasticsearch. Context is the search
# filter as shown above the dashboard. Timefield uses the value
# of the time picker from the upper right corner.
%context%: true
%timefield%: timestamp
index: tw
body: {
size: 10000
_source: ["timestamp", "user_lang", "country", "polarity", "lang", "sentiment"]
}
}
# We only need the content of hits.hits array
format: {property: "hits.hits"}
}
# Parse timestamp into a javascript date value
transform: [
{calculate: "toDate(datum._source['timestamp'])", as: "time"}
]
# Draw a circle, with x being the time field, and y - number of bytes
mark: line
encoding: {
x: {field: "time", type: "temporal"}
y: {aggregate: "mean", field: "_source.polarity", type: "quantitative"}
}
}
这给了我一个错误 Cannot read property 'polarity' of undefined。一旦我摆脱聚合,它就会起作用,但我想显示不是所有数据的平均值。
此外,我不知道如何访问嵌套的主题标签文本字段,我尝试了 _source.hashtags.text 但没有成功:
示例文档:
{
"_index": "tw",
"_type": "tweet",
"_id": "_HHWSGIBbYt8wc5TlB8B",
"_score": 1,
"_source": {
"lang": "en",
"favorited": false,
"sentiment": "positive",
"user_lang": "en",
"user_screenname": "BrideWiltshire",
"timestamp": "2018-03-21T13:54:04.928556",
"user_follow_count": 147,
"hashtags": [
{
"indices": [
8,
12
],
"text": "WIN"
}
],
"user_stat_count": 3377,
"user_fav_count": 11,
"coordinates": null,
"source": """<a href="https://panel.socialpilot.co/" rel="nofollow">SocialPilot.co</a>""",
"subjectivity": 0.3333333333333333,
"user_friends_count": 62,
"polarity": 0.5333333333333333,
"text": "Want to #WIN ‘His and Hers’ luggage labels from @DavidHampton, worth more than £100? Enter our competition now",
"message": "Want to #WIN ‘His and Hers’ luggage labels from @DavidHampton, worth more than £100? Enter our competition now",
"country": null,
"user_name": "Wiltshire Bride",
"favorite_count": 0
}
},
映射:
{
"tw": {
"mappings": {
"tweet": {
"properties": {
"coordinates": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"country": {
"type": "keyword"
},
"favorite_count": {
"type": "long"
},
"favorited": {
"type": "boolean"
},
"hashtags": {
"properties": {
"indices": {
"type": "long"
},
"text": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
}
}
},
"lang": {
"type": "text"
},
"location": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"message": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"polarity": {
"type": "float"
},
"sentiment": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"source": {
"type": "text"
},
"subjectivity": {
"type": "float"
},
"text": {
"type": "text"
},
"time_zone": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"timestamp": {
"type": "date"
},
"user": {
"properties": {
"favourites_count": {
"type": "long"
},
"followers_count": {
"type": "long"
},
"friends_count": {
"type": "long"
},
"lang": {
"type": "text"
},
"name": {
"type": "text"
},
"screen_name": {
"type": "text"
},
"statuses_count": {
"type": "long"
}
}
},
"user_fav_count": {
"type": "long"
},
"user_follow_count": {
"type": "long"
},
"user_friends_count": {
"type": "long"
},
"user_lang": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"user_name": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"user_screenname": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"user_stat_count": {
"type": "long"
}
}
}
}
}
}
最佳答案
如果您的 hashtags 字段是嵌套类型并且 hashtags.text 是关键字字段(或具有 hashtags.text.keyword),那么您可以使用以下散点图
{
$schema: https://vega.github.io/schema/vega-lite/v2.json
title: hashtags vs avg_polarity
data: {
url: {
index: twitter
body: {
size: 0
query: {
match_all: {}
}
aggs: {
HashTags: {
nested: {path: "hashtags"}
aggs: {
HashTags_Text: {
terms: {field: "hashtags.text"}
aggs: {
Tweet_Polarity: {
reverse_nested: {}
aggs: {
Tweet_Polarity_avg: {
avg: {field: "polarity"}
}
}
}
}
}
}
}
}
}
}
format: {property: "aggregations.HashTags.HashTags_Text.buckets"}
}
mark: {type: "line"}
encoding: {
x: {
field: key
type: Nominal
axis: {title: "HashTags"}
}
y: {
field: Tweet_Polarity.Tweet_Polarity_avg.value
type: quantitative
axis: {title: "polarity"}
}
}
}
在开始添加文档之前,您必须如下指定索引映射
POST /tw
{
"mappings": {
"tweet": {
"properties": {
"favorite_count": {
"type": "long"
},
"favorited": {
"type": "boolean"
},
"hashtags": {
"type": "nested",
"properties": {
"indices": {
"type": "long"
},
"text": {
"type": "keyword"
}
}
},
"lang": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"message": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"polarity": {
"type": "float"
},
"sentiment": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"source": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"subjectivity": {
"type": "float"
},
"text": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"timestamp": {
"type": "date"
},
"user_fav_count": {
"type": "long"
},
"user_follow_count": {
"type": "long"
},
"user_friends_count": {
"type": "long"
},
"user_lang": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"user_name": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"user_screenname": {
"type": "text",
"fields": {
"keyword": {
"type": "keyword",
"ignore_above": 256
}
}
},
"user_stat_count": {
"type": "long"
}
}
}
}
}
关于javascript - kibana 的 Vega 可视化 - 聚合和访问文档字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49651709/
我使用 certbot/Letsencrypt 为我的应用程序生成了证书。我在我的 kibana.yml 文件中添加了两个 pem 文件。当我尝试通过 https://domainName:5601
问题:我如何调试 kibana?有错误日志吗? 问题 1:kibana 4 不会熬夜 问题 2:我不知道 kibana 4 在哪里/是否记录错误 细节: 这是我启动 kibana,向端口发出请求,什么
我是ElasticSearch和Kibana的新手,我在ElasticSearch中的数据看起来像 { "_index": "ec", "_type": "monitor", "_id":
我目前正在使用 Kibana 3,并且想升级到 Kibana 4。但是,我想保留 Kibana 3,直到我在 Kibana 4 中配置好我的仪表板。两者可以并排运行而不相互干扰吗? 我知道 Kiban
我正在使用 Kibana 5.4.3 并构建分布图(如下图中绿色部分所示)。这看起来像一个高斯分布,因此我想要两个添加两条垂直红线来指示标准偏差。你知道我如何实现这一点吗? 非常感谢! 最佳答案 如果
我在RHEL 7.2上运行kibana 4.4.1 当kibana.yml文件不包含设置server.basePath时,一切正常。 Kibana成功启动并吐出消息 [info][listening]
我在 Kibana 中有一个字段,它有时是字符串,有时是数组。 例如: { "fld1": "val1", "fld2": "val2"} { "fld1": "val3", "fld2": [ "v
我想在 kibana dasgboard 中添加图像,但它给了我错误。 enter image description here 我曾使用 Markdown 添加图像,但给了我错误,如附图所示。 最佳
我尝试使用部分服务器名称在 kibana 中搜索主机名: B-wit-a2pgw-* 我也试过: hostname: B-wit-a2pgw-* 和: instance: B-wit-a2pgw-*
我的elasticsearch 数据库中有一个名为rpc 的字段,我使用Kibana 显示它。当我在 kibana 的搜索栏中搜索时,如下所示: rpc:* 它显示 rpc 字段的所有值,但我只想显示
我是 Kibana 新手,需要一些帮助。 我可以为单个查询绘制此折线图(java): 现在我想在同一图表中使用另一行进行另一个查询(例如 python)。我不太确定该怎么做。另外“Markdown w
我每 30 秒使用 logstash 向 elasticsearch 发送一个事件。此事件称为“测试”并具有数字字段“值”。所以我有一个事件列表,其中“值”字段有时会发生变化。例如: 时间戳:2-04
在我的 Kibana 中,当我搜索我的文档时,我需要寻找完全匹配: 在我的文档中,我有一个名为 message 的字段。 所以如果我搜索(使用 Kibana)类似的东西: message: "Prov
我已经阅读了 Kibana 网站,所以我从理论上知道 Kibana 的用途,但我对真实世界的故事很感兴趣。 Kibana 只是用来做日志分析的吗?它可以用作跨实际数据集的某种 BI 工具吗?有兴趣了解
在与他人共享 kibana 仪表板时,有没有办法设置某种权限。我担心有人会删除它或进行更改并保存它。我用谷歌搜索但没有找到任何东西。 最佳答案 自从提出这个问题以来,发生了很多事情。自 5 月以来,社
我想知道有什么方法(或解决方法)可以在 Kibana 仪表板上绘制移动平均线? 我已经阅读了官方网站上的所有文件,但没有提到移动平均线(或高级图表)。 任何信息或关键字都会有所帮助,提前致谢:) 最佳
我有一个包含许多字段名称的索引。我使用 Kibana 3 来可视化来自所述索引的分析。由于我有很多字段,我发现很难设置字段名称,每次我在 Kibana 中进行一些分析时。 Kibana 是否提供自动完
我有一个想要拆分的图表,所以我看到了 3 个不同行的图表。但是,它将所有三个图形的 y 轴自动缩放到所有图形的最小值和最大值。这是非常有问题的,因为其中一个图的比例要大得多,而其他图看起来就像零。 我
关闭。这个问题不满足Stack Overflow guidelines .它目前不接受答案。 想改善这个问题吗?更新问题,使其成为 on-topic对于堆栈溢出。 2年前关闭。 Improve thi
我想创建一个仪表板,显示有关一组有限请求值的信息: request:("/path1" OR "/path2" OR "/path3") 到目前为止我尝试过的: 我可以通过单击饼图的一部分将过滤器添加
我是一名优秀的程序员,十分优秀!