列占列总和的百分比饼图

Pie chart of percentage of column over sum of columns

对于以下数据集,我想在 Qlik Sense 中创建一个饼图。数据集表示飞机检查中的维修以及这些维修的任务编号。我想查看任务的饼图,看看哪些任务发生最多(例如:任务 1:20%,任务 2:33%,等等)。但是,由于我是 Qlik Sense 的新手,我无法弄清楚如何使用来自多列的值来获取饼图。完整的数据集大约有 130 个任务。

Aircraft    Check   Date        Task1   Task2   Task3   Task4   Task5
AAB         P1      01-01-10    4       0       4       3       0
AAC         P1      02-01-10    5       0       3       1       1
AAD         P2      03-01-10    5       1       1       0       1
AAE         P1      05-01-10    2       0       2       2       1
AAC         P3      05-01-10    2       0       5       0       1
AAB         P4      06-01-10    0       0       3       1       2
AAE         P2      08-01-10    3       0       0       4       1
AAD         P3      09-01-10    5       0       4       1       4
AAD         P4      10-01-10    4       2       0       4       4

我认为主要问题是饼图的尺寸,因为它由多列组成,但我不确定。 有人知道如何解决这样的问题吗?

一个解决方案是 unpivot/crosstable 数据 - 这将创建 table 更像:

Aircraft    Check   Date        Task   Value
AAB         P1      01-01-10    Task1  4
AAB         P1      01-01-10    Task2  0
AAB         P1      01-01-10    Task3  4
AAB         P1      01-01-10    Task4  3
AAB         P1      01-01-10    Task5  0
AAC         P1      02-01-10    Task1  5

然后您可以将维度作为任务进行求和(值)。

在脚本编辑器中,假设你的 table 被称为 "Checks" 这可以通过类似的方式完成:

Checks_new:
crosstable(Task,Value,3)
Load * resident Checks;
drop table Checks;
rename table Checks_new to Checks;

其他一些建议

  • 如果可能有 130 个细分,最好不要制作饼图!
  • 如果不需要零值,并且当您从每个 aircraft/check/day 一行变为每个 aircraft/check/day/task[= 一行时数据集变大,您可能会排除零值24=]