如何向我的 vega-lite 图表添加辅助 Y 轴?

How do I add a secondary Y axis to my vega-lite chart?

这个问题展示了一种将多个时间序列添加到 vega-lite 图表的方法:

有没有办法将第二个系列放在第二个 Y 轴上?我说的是在右侧放置另一个 Y 轴,这样时间序列可以有不同的尺度,但仍然可以进行比较。

下图展示了我想要的图表类型:

这是一个示例图表,请告诉我如何将第二个时间序列移动到图表右侧的新 Y 轴:

https://vega.github.io/editor/#/gist/vega-lite/ashleydavis/3dbd3b83f2a67da8fe20ef444fd4958e

更新:

我已经部分解决了我的问题,但不是 100%。

通过将 "axis" 和 "orient" 字段添加到我的 vega-lite 图表中,我已经能够将第二个系列移动到右侧,如您在此处所见:

https://vega.github.io/editor/#/gist/vega-lite/ashleydavis/5aea58ee98c2eec9913b309836181a5b

我现在遇到的问题是,当我尝试使用两个具有完全不同比例的值的不同时间序列创建这样的图表时,我得到了一些没有用的东西。

你可以从这个图表中看到,图表的两边使用相同的比例,这使得无法比较数据,因为第一个系列(比例较小)最终被完全压扁。

您可以在此处的屏幕截图中查看图表:

https://vega.github.io/editor/#/gist/vega-lite/ashleydavis/af1958d3f22bd876959ebcc97105dd14

所以现在的问题是如何使这些轴独立,以便数据重叠并易于比较?

(并不是说比较这个例子中的数据有意义,但一般我需要能够做到这一点)。

是的,您可以将轴和刻度设置为独立于 resolve 属性。 Vega-Lite 会自动为您创建两个轴。

参见https://vega.github.io/vega-lite/docs/layer.html#combined-scales-and-guides