【问题标题】:What is the best way to represent binary data?表示二进制数据的最佳方式是什么?
【发布时间】:2017-06-12 05:30:50
【问题描述】:

我正在尝试在 powerBi 中绘制一个图表,有 DateTime vs state, 这将是一种更好的数据表示方式。

目前,我已经尝试过折线图和面积图,两者看起来都很糟糕,因为我们的状态值波动更大。

以下是数据样本:-

xDate           IsHealthy
5/26/2017 12:31 TRUE
5/26/2017 12:41 FALSE
5/26/2017 12:51 FALSE
5/26/2017 13:01 FALSE
5/26/2017 13:11 TRUE
5/26/2017 13:21 FALSE
5/26/2017 13:31 FALSE
5/26/2017 13:41 FALSE
5/26/2017 13:51 TRUE
5/26/2017 14:01 FALSE
5/26/2017 14:11 TRUE

请提出一种更好的方法来从上述数据中获得更多见解

【问题讨论】:

  • 对此的最佳答案很大程度上取决于您希望获得的洞察力,以及此图表旁边的报告/仪表板上的随附信息。也就是说,对于IsHealthy 使用不同颜色或转换为正/负值的简单柱形图有什么问题?
  • 我们基本上希望从更广泛的角度了解服务可用性。而且我们不想阅读日志,而 Graph 应该是自解释的。
  • 然后尝试不同的图形/图表类型,直到找到符合您期望的内容。

标签: reporting-services graph powerbi data-analysis


【解决方案1】:

我会按日期对数据进行分组,然后计算 TRUE 和 FALSE。假设这是某种“正常运行时间可用性报告”,然后根据每天的样本数计算正常运行时间百分比。

我已将 TRUE/FALSE 转换为位类型并包含示例数据,以便您快速测试。

DECLARE @t TABLE (xDate datetime, IsHealthy bit)
INSERT into @t
VALUES 
('5/26/2017 12:31', 1),
('5/26/2017 12:41', 0), 
('5/26/2017 12:51', 0), 
('5/26/2017 13:01', 0), 
('5/26/2017 13:11', 1), 
('5/26/2017 13:21', 0), 
('5/26/2017 13:31', 0), 
('5/26/2017 13:41', 0), 
('5/26/2017 13:51', 1), 
('5/26/2017 14:01', 0), 
('5/26/2017 14:11', 1),

('5/27/2017 12:31', 1),
('5/27/2017 12:41', 1), 
('5/27/2017 12:51', 1), 
('5/27/2017 13:01', 0), 
('5/27/2017 13:11', 1), 
('5/27/2017 13:21', 1), 
('5/27/2017 13:31', 1), 
('5/27/2017 13:41', 0), 
('5/27/2017 13:51', 1), 
('5/27/2017 14:01', 0)

select distinct
    convert(date, xDate) as xDate, IsHealthy
    , count(*) over (PARTITION BY convert(date, xDate), IsHealthy) as CountPerState
    , count(*) over (PARTITION BY convert(date, xDate)) as TotalCOuntPerDay
    , CAST(count(*) over (PARTITION BY convert(date, xDate), IsHealthy) as float) / cast(count(*) over (PARTITION BY convert(date, xDate)) as float) as PercentageOfDay
from @t

这将为您提供以下输出

xDate       IsHealthy   CountPerState   TotalCOuntPerDay    PercentageOfDay
2017-05-26  0           7               11                  0.636363636363636
2017-05-26  1           4               11                  0.363636363636364
2017-05-27  0           3               10                  0.3
2017-05-27  1           7               10                  0.7

现在您有了这个,您可以只将PercentageOfDay 其中IsHealthy=1 行绘制为一条线,或者根据您的喜好在堆叠列中显示两种状态。

【讨论】:

  • 感谢 Alan,但是 PowerBi 中的这些信息可以很容易地绘制在饼图和日期切片器中,这不仅可以提供明智的见解,还可以帮助我们深入了解一天中的时间。
  • 糟糕!那会教我有超过3个小时的睡眠!我希望它至少能让你对事物的可视化方面有更多的想法。
猜你喜欢
  • 1970-01-01
  • 2021-12-29
  • 1970-01-01
  • 2014-01-23
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-09
相关资源
最近更新 更多