我正在尝试在单个 SSRS (v14( 折线图上显示多个传感器的时间序列 我需要绘制 N 个系列,每个系列在图表提供的空间内独立绘制序列数据(独立纵轴(
有关数据的更多信息
可以有~1-10系列的任何地方 挑战在于它们是不同的数量级。
一个可能是华氏度 (~0-212( 一个可能是碳ppm(~1-16( 一个可能是 Ftlbs 推力 (~10k-100k(
关键是,它们没有关系,可以非常不同
确切的值并不重要。我可以隐藏垂直轴
更多关于我正在尝试做什么
这个想法是显示多个时间序列,在前后 4 小时内根据时间绘制在一起 "一个事件"。 它不一定是重要的确切值。主题专家会寻找一些奇怪的东西(温度下降、推力峰值等(。
我尝试过的事情
如果只有 2 个系列,我可以轻松使用 SSRS 图表中可用的第 2 轴。这正是我所追求的想法。但在这种情况下,我希望 N 系列使用自己的轴进行绘制。
我尝试将 N 个透明图形堆叠在一起。这将是一个非常丑陋的解决方案,但SSRS甚至不会让你这样做。它会为您解开它们。
我已经尝试了垂直轴上的"允许缩放中断"属性。 这将解决问题,但我们不喜欢"双锯齿线"
打开对数刻度是可能的。它确实在显示所有数据方面做得更好。但这不是我们真正想要的。它将改变几个数量级的数据形状。
我尝试了迷你图组件,但遇到了同样的问题。
这种方法基本上与上面的格雷格的答案相同。过去,我不得不做同样的过程来比较数据趋势,即使单位不同。
我采用了一种非常简单的方法,向查询中添加一个额外的列,该列将每个值显示为每个系列中最大值的百分比。
举个例子(为了清楚起见,这里只有 2 个系列(,我从这样的数据开始myTable
Series Month myValue
A Jan 4
A Feb 8
A Mar 16
B Jan 200
B Feb 300
B Mar 400
我的数据集查询类似于。
SELECT *, myValue / MAX(myValue) OVER(PARTITION BY Series) as myPlotValue FROM myTable
这给了我们一个最终的数据集,看起来像这样。
Series Month myValue myPlotValue
A Jan 4 0.25
A Feb 8 0.5
A Mar 16 1
B Jan 200 0.5
B Feb 300 0.75
B Mar 400 1
如您所见,所有绘图值现在都介于 0 和 1 之间。
我使用myPlotValue
字段创建了该图表,并可以选择使用myValue
字段中的原始值作为数据点标签。
在与一些数学家交谈后,这是一个标准问题,它通过称为数据规范化的过程来解决。
本质上,您正在更改所有系列以适应给定的范围(通常为 0-1( 您可以缩放并添加偏移量,如果这对您的问题域有意义。
https://www.statisticshowto.datasciencecentral.com/normalized/