我昨天发了一个类似的帖子,但是在得到几条评论后决定删除它,因为我非常误解我的问题实际上是什么,因此我已经努力解决它,并希望能更准确地解释它。
我想更新3个矩形的大小,使用新数据但相对于父宽度保持不变,而不是直接根据数据更改调整它们的大小。
下面是一个plnk链接;
http://plnkr.co/edit/eVfgniBQLbJLiMvAtWLI
这个例子展示了我想要更改数据的方式。问题在于轴的宽度会独立于父宽度扩展/收缩。
我认为解决方案可能是这样的;
// OLD SOLUTION
x: d.y,
y: d.x,
x0: d.y0
// NEW SOLUTION
x: (d.y / calcTotal) * width,
y: d.x,
x0: (d.y0 / calcTotal) * width
这将计算每个数字相对于新数据集的总量的百分比,然后将每个数字乘以父容器的宽度,以确保每个矩形每次都会改变大小,但保持相对于父容器的大小。但是,我不确定如何修复其余的功能,因为当使用我的新解决方案更新数据时,矩形在视觉上不会更改其大小。感谢任何建议!谢谢。