当前位置: 首页 > news >正文

网站开发常用的开发工具整站优化外包服务

网站开发常用的开发工具,整站优化外包服务,有个专门做gif的网站,设计素材网站哪个好作者:来自 Elastic Vincent du Sordet 我们将看到 Kibana Lens 编辑器中的神奇数学公式如何帮助突出显示高值。 简介 在上一篇博文《作为非设计师设计直观的 Kibana 仪表板》中,我们强调了创建直观仪表板的重要性。它展示了简单的更改(分组…

作者:来自 Elastic Vincent du Sordet

我们将看到 Kibana Lens 编辑器中的神奇数学公式如何帮助突出显示高值。


简介

在上一篇博文《作为非设计师设计直观的 Kibana 仪表板》中,我们强调了创建直观仪表板的重要性。它展示了简单的更改(分组主题、更改类型图表等)如何对理解数据产生影响。在提供 Kibana 数据分析或 Elastic Observability Engineer 课程等课程时,我们强调了这篇博文以及这些更改如何帮助将重要信息带到表面。我喜欢一种互补的方法来实现这一目标:使用两种颜色将最高数据值与常见数据值区分开来。

为了说明这个想法,我们将使用示例航班数据数据集。现在,让我们比较两个可视化,按航班总数排名前 10 个目的地国家。哪个可视化的影响更大?

如果你选择第二个,你可能想知道如何使用 Kibana Lens 编辑器来实现这一点。去年准备认证时,我找到了一种实现这一结果的方法。秘诀是使用两个不同的层和一些神奇的公式。这篇文章将解释 Lens 公式中的数学如何帮助创建两个数据颜色可视化。

我们将从第一个示例开始,该示例仅强调我们关注的数据集的最高值。第二个示例描述了如何突出显示其他高值(如上图所示)。

[注意:本博客文章中解释的技巧可以从 v 7.15 开始应用]

导入数据

我们可以按照如下的步骤来导入我们的示例数据:

这样我们就添加了需要用到的实力 sample flight dataset。

仅强调最高值

要了解数学如何帮助区分高值与普通值,让我们从第一个例子开始:仅强调最高值。

我们先从水平条形图开始:

我们需要确定当前正在检查的范围的最高值。我们将使用一个适当的 overall_* 函数:overall_max(),一个管道函数(相当于查询 DSL 中的管道聚合)。

在我们的示例中,我们按国家/地区(目的地)对航班进行分组。这意味着我们计算每个 DestCountry(= 1个存储桶)的航班数量。overall_max() 将选择哪个存储桶具有最高值。

这里的数学技巧是将每个存储桶的航班数量除以在所有存储桶中找到的最大值。只有一个存储桶将返回 1:与overall_max() 找到的最大值匹配的存储桶。所有其他存储桶将返回 <1 和 >0 的值。我们使用 floor() 来确保任何 0.xxx 值都四舍五入为 0。

现在,我们可以用 count() 将它乘以 1,这样我们就得到了第一层的公式!

Layer 1: count()*floor(count()/overall_max(count()))

从这里开始,在 Lens Editor 中,我们复制图层以调整包含其余数据的第二层的公式。我们需要在公式中附加另一个 count(),后跟减号运算符。这是另一个技巧。在此层中,我们只需确保不显示最高值,这只会发生一次。这是当 count() = total_max() 时,当我们将它们相除时,其值为 = 1。

Layer 2: count() - count()*floor(count()/overall_max(count()))

为了实现这两个图层的完美合并,我们需要在这两个图层中做以下调整:

  • 选择 bar horizontal stacked 
  • 垂直轴:将 “Rank by” 更改为 “Custom”,并确保排序功能为 “Count”

以下是两个图层的最终设置:

在上面,我们创建了一个最初的可视化图。我们最终为两个图层的配置如下:

Layer 1: count()*floor(count()/overall_max(count()))
Layer 2: count() - count()*floor(count()/overall_max(count()))

这种可视化对于时间序列数据也很有效,你需要快速突出显示哪个时间段(下例中为 12 小时)的航班数量最多:

在表面之上

基于我们之前所做的工作,我们可以扩展这种方法,以获得表面以上的其他高值。让我们看看我们在引言中使用了哪种公式来创建可视化图:

对于此可视化,我们使用了 round() 函数的一个属性。此函数仅引入大于最高值 50% 的值。

让我们复制第一个可视化并用 round() 替换 floor() 函数。

Layer 1: count()*round(count()/overall_max(count()))
Layer 2: count() - count()*round(count()/overall_max(count()))

这是一个简单的解决方案。如果我们想通过添加更多高值来进一步扩展第一层,该怎么办?例如,我们希望所有值都高于平均值。

为此,我们使用 overall_average()作为新的参考值,而不是 overall_max() 参考,以分离第1层中的合格值。由于我们正在与所有桶中的平均值进行比较,因此除法可能会返回大于 1 的值。

这里,clamp() 函数很好地解决了这个问题。

根据公式参考,clamp() “将值从最小值限制到最大值”。将 clamp() 和 floor() 结合起来可确保只有两个可能的输出值:作为参数给出的最小值 ( 0 ) 或最大值 ( 1 )。

应用于我们的航班数据集,它突出显示了航班数量超过平均水平的国家目的地:

Layer 1: count()*clamp(floor(count()/overall_average(count())),0,1)
Layer 2: count() - count()*clamp(floor(count()/overall_average(count())),0,1)

它还提供了使用其他动态引用的选项。例如,我们可以将所有大于最高值的 60% 的值放置在表面上方(> 0.6*overall_max(count()))。我们可以调整公式如下:


count()*clamp(floor(count()/(0.6*overall_max(count()) ) ),0,1)

结论

在第一部分中,我们已经了解了创建双色直方图的主要技巧:

  • 两层:一层用于最高值,一层用于剩余值
  • 可视化类型:水平/垂直堆叠条形图
  • 为了分离数据,我们使用一个公式,其中只有最高值返回 1,否则返回 0

然后在第二部分中,我们已经了解了如何扩展此原则以包含表面上方的更多高值。这种方法可以总结如下:

  • 从关注高值的第 1 层开始:count()*<返回 0 或 1 的公式>
  • 复制该层并调整公式:
  • ( count() - count()*<返回 0 或 1 的公式>)

最后,我们提供了 4 个通用公式,可用于为你的仪表板增添趣味:

1. Only the highest
Layer 1

count()*floor(count()/overall_max(count()))

Layer 2

count() - count()*floor(count()/overall_max(count()))

2.1. Above the surface : high values (above 50% of the max value)
Layer 1

count()*floor(count()/overall_max(count()))

Layer 2

count() - count()*floor(count()/overall_max(count()))

2.2. Above the surface : all values above the overall average
Layer 1

count()*clamp(floor(count()/overall_average(count())),0,1)

Layer 2

count() - count()*clamp(floor(count()/overall_average(count())),0,1)

2.2. Above the surface : all the values greater than 60% of the highest
Layer 1

count()*clamp(floor(count()/(0.6*overall_max(count()) ) ),0,1)

Layer 2

count() - count()*clamp(floor(count()/(0.6*overall_max(count()) ) ),0,1)

通过注册免费试用 Elastic Cloud 或免费下载 Elastic Stack 的自管理版本,亲自尝试这些示例。如果你对入门有其他问题,请前往 Kibana 论坛或查看 Kibana 文档指南。

在下一篇博客文章中,我们将看到新函数 ifelse()(在版本 8.6 中引入)如何通过更高级的公式大大简化可视化的创建。

参考文献

  • 作为非设计师设计直观的 Kibana 仪表板
  • Kibana:Lens 编辑器 - 使用公式进行数学运算
  • 在此讨论中发现 clamp() 函数(感谢 Marco!)

原文:Kibana: How to create impactful visualisations with magic formulas ? (part 1) — Elastic Observability Labs

http://www.dinnco.com/news/35023.html

相关文章:

  • 北京建设集团网站首页网页制作公司哪家好
  • 沈阳建站公司模板网页搜索快捷键
  • 网站关键词选取新开网站
  • 同一个空间供应商做很多个网站影响网站排名百度官网首页入口
  • 家具定制网站泉州seo外包
  • 永久免费网站建立余姚关键词优化公司
  • 外国人做的汉子网站如何做一个网站的seo
  • 怎么做ebay网站seo定义
  • 政治建设网站百度科技有限公司
  • 如何做网络投票网站企业文化内容范本
  • 网站源码商城建设seo投放营销
  • 可以直接玩游戏的网站8大营销工具
  • 国外服务器加速seo营销方案
  • 微信app网站建设最近实时热点事件
  • 企业做的网站费入什么科目商丘seo
  • 海口会计报名网站友情链接交换的意义是什么
  • 山东省建设厅网站特种作业seo推广怎么收费
  • 潍坊地区制作网站站长工具网站查询
  • 做受免费网站百度seo效果怎么样
  • 做微商推广有哪些好的分类信息网站打开网址跳转到国外网站
  • 香港ccd设计公司官网关键词优化排名平台
  • 网站建站所用的技术河北网站推广
  • 河北省 建设执业注册中心网站网站推广优化方案
  • 资讯网站如何做聚合市场营销产品推广策划方案
  • 私服网站怎么做域名注册需要多少钱?
  • 低价服装网站建设网站排名快速提升
  • 哪里有做商城的网站简述企业网站如何推广
  • 北京 网站制作cpc广告点击日结联盟
  • 深圳做网站优化seo赚钱吗
  • 市场调研公司招聘seo综合查询 站长工具