我试图创建一个带有两个垂直y轴的D3折线图,一个在左边,一个在右边。左轴的领域可能有负值,这意味着零点将向上移动。我想将右轴的零点对齐到左轴的一个。类似的,你可以在这里看到,但没有x轴移动得向上:到目前为止D3图表:如何对齐双y轴的零点
,我试图寻找它代表零点的滴答声的HTML g组件:
<g id="tmp" class="y axis" transform="translate(30,0)" fill="red">
<g class="tick" style="opacity: 1;" transform="translate(0,330)">
<g class="tick" style="opacity: 1;" transform="translate(0,257.5)">
<g class="tick" style="opacity: 1;" transform="translate(0,185)">
<line x2="-5" y2="0">
<text dy=".32em" style="text-anchor: end;" x="-8" y="0">0</text>
</g>
我需要的是在转换属性中提取“185”高度值,以便我可以将它用于第二个轴的范围。
这只是我的基本想法,它是如何完成的。有谁知道它在技术上如何与D3/Javascript?或者甚至可能有更优雅的解决方案?
AFAIK这不能轻易完成(请参阅https://stackoverflow.com/questions/20641547/using-d3-js-is-there-a-way-to-zero-align-two-y-axes -with阳性和阴性-v)。 –
感谢您的链接!用户jglover发布了一个适合我的解决方案! – flixe