0

我有一组看起来像这样的数据。与一种语言相反的数字是存储库中使用的该语言的百分比,以百分比表示。

{
 "repository" : "https://github.com/xxx",
 "nb_users" : 150,
 "project" : "projectA",
 "languages" : {
            "COBOL" : 9.54,
            "Batchfile" : 0.0,
            "CSS" : 0.03,
            "HTML" : 37.4,
            "Java" : 53.02
          }
}
{
 "repository" : "https://github.com/yyy",
 "nb_users" : 120,
 "project" : "projectA",
 "languages" : {
            "Javascript" : 33.98,
            "Java" : 56.02
          }
}                 
{
 "repository" : "https://github.com/zzz",
 "nb_users" : 10,
 "project" : "projectB",
 "languages" : {
            "C#" : 90,
            "HTML": 5,
            "Java" : 5
          }
}                 

我想用 Kibana 做两件事

1) 对语言进行全面评估。我想要一个饼图,每个切片代表一种语言,即我想计算字段languages.Java,languages.C等的出现次数在这种情况下,Java出现3次,HTML出现2次,休息一次。

=> 我将如何在 Kibana 中绘制这样的饼图?

2)收集每个项目和每个存储库的所有语言信息,而不考虑百分比。即我希望能够确定 COBOL 用于 1 个项目和 1 个存储库 JAVA 用于 2 个项目和 3 个存储库 => 我将如何在直方图中显示此信息?示例:每种语言的直方图。Y 轴将是使用给定语言的项目数量,X 轴将由不同的语言组成。

谢谢你的帮助

4

1 回答 1

0

我设法部分做了我想做的事。即拥有使用特定语言的存储库数量并将其放入饼图中。

在 kibana 中,我在 vizualisation 部分创建了一个饼图:

在 Metrics 部分:使用“repository”字段的“Unique count”进行聚合

在 Buckets 部分,使用“Split slices”并使用“Filters”作为 Aggregation。为每种语言添加一个过滤器。所以一个过滤器将是:“language.COBOL:”另一个过滤器将是:“language.Batchfile:

=> 我最终得到一个饼图,每个切片包含每种语言的存储库数量。

于 2020-05-19T14:02:20.447 回答