我有一个交叉表,显示了几个月销售的水果,如下所示:
![Table 1]](https://www.javaroad.cn/files/images/22db8fd2-0bba-4a0c-bf41-baafe2e7afe3.jpg)
现在,我想看一个表(如下所示),它将一个单元格与另一个单元格划分为一个特定的列:
![Table 2]](https://www.javaroad.cn/files/images/854ca314-aea5-4acd-9097-673bd645eeab.jpg)
如果可以通过OVER声明告诉我 .
UPDATE:
@Chris - 我已经在访问中转换了原始表,可以在Spotfire中创建下面的交叉表可视化 .
注意:苹果销售,销售橙子,销售的西瓜现在是应用转化后的单独栏目 .
但是,我希望以下面的格式看到交叉表 .
如果可能,请告诉我 . 如果可以使用Iron Python脚本实现这一点,我就可以了 .
谢谢!
1 回答
由于您的数据格式很粗,我的原始答案不起作用 . 我保留了答案作为其中的一部分,以防它帮助其他人,见下文 .
通过您的更新,您似乎已设法使用所需的数据创建crosstable . 虽然如果能在行,列和测量轴上显示精确的轴表达式会很有帮助,但我可以尝试说明如何根据需要在交叉表中转置数据 . 有关说明,请参见最后一节 .
使用高瘦的格式,您将无法使用OVER表达式,因为您希望进行显式比较(至少我不认为这是可能的) . 首先,我想指出你必须以某种方式决定你想要比较哪些水果,或者你可能想要比较所有这些水果 . 确切的解决方案取决于您的实际用例是什么以及您需要它的动态性 .
可能的解决方案:
在您的crosstable中,将行轴定义为(列名称):
将时间轴放在列轴上,例如:
在测量轴上,您现在将添加您感兴趣的所有比较,例如:
这是我用自己非常小的虚拟数据集看起来的链接:
您可以将它与文本区域中的用户控件结合使用,也可以使用$ map()表达式函数,以便在需要时使其更具动态性 . 如果您在此需要大量动态行为,则可能需要更改为使用数据函数 .
老答案
以下是我的原始答案,其中包括对此案例中不适用的数据的推定 . 如果其他人确实有这种情况,请保持在这里 .
在表1中,您有两个分类轴,一个用于时间,一个用于水果 . 你所展示的措施是销售水果的数量 .
在表2中,我会说你只有一个分类轴,时间 . 之后,您有两个测量值,您的行轴将是'(列名称)' .
这些措施将是苹果的数量除以橙子的数量,以及橙子的数量除以西瓜的数量 . 如果您右键单击测量轴并转到自定义表达式,您可能会遇到以下情况:
此外,转到属性 - >格式化并根据自己的喜好设置百分比格式 .
在交叉表中转置
它会猜测你的轴表达式是什么 . 即使我猜错了,无论初始状态如何,相同的方法都适用 . 您只需要将行轴与列轴交换 . 您可以使用轴选择器,或从自定义表达式编辑器复制和粘贴来完成此操作 . 如果这是您从一开始就拥有的那种配置:
然后通过交换轴表达式,这就是你得到的: