在d3js中放大线条

4
我想使用d3.js库在javascript中绘制函数图形,并需要添加缩放和平移事件。我已经按照以下示例完成了此操作:http://bl.ocks.org/mbostock/7ec977c95910dd026812。 我在这个平面上画了一些线。我的问题是,当我缩放时,线的宽度也会改变。我希望线在缩放时仍然保持原始宽度。我认为我需要重新绘制它,但我不确定这是否是最好的方法。你能告诉我有没有更好的方法来做到这一点,或者给我展示一个简单的例子吗?谢谢!

1
请参考此示例,你需要使用所谓的语义缩放。 - Lars Kotthoff
2个回答

0

浏览器支持可能是相关的,而且看起来不太乐观:https://dev59.com/cl0a5IYBdhLWcg3w68cz - phk

0

由于您没有提供任何代码,所以有点难以确定。根据您的描述,您正在渲染的网格线正在被缩放矩阵转换。

您可以独立于缩放绘制网格,但是您将不得不在缩放和网格变换之间切换,并且需要更多的代码,或者只需使用宽度设置为宽度乘以反比例尺度重新渲染网格线。例如,如果您的网格线为两个像素,则可以通过将其渲染宽度设置为2 *(1 / scale)来保持它们的宽度,这与2 / scale相同。比例尺度是缩放量。对于任何您希望保持固定渲染大小的对象也适用。

没有简单的方法可以避免重新渲染网格线。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接