gpt4 book ai didi

javascript - D3 比例 - 为什么乘以 1 会有所不同?

转载 作者:行者123 更新时间:2023-11-30 14:12:37 25 4
gpt4 key购买 nike

我正在使用 d3.js 制作退休计算器/条形图。我构建了条形图来显示静态数组,然后将图表连接到我的退休方程式。

当我将我的图表连接到我的计算器时,我的 yScale 是错误的,即使输入数组是相同的。我通过改变这个来修复它:

const yScale = d3.scaleLinear().domain([0, d3.max(fvArr,(d)=>d[1])]).range([height-padding,0]);

为此:

const yScale = d3.scaleLinear().domain([0, d3.max(fvArr,(d)=>d[1]*1)]).range([height-padding,0] );

为什么这样做? Codepen 是 here .

最佳答案

这里的问题是您的数据包含字符串,而不是数字。

如果查看 fvArr 数组,您会看到:

[[0, "30000"], [1, "32800"], [2, "35768"] etc...]

所以,乘法在这里所做的只是将结果强制转换为数字。检查这个:

console.log(typeof("5" * 1))

这与使用一元加号相同,后者更常见:

console.log(typeof(+"5"))

关于javascript - D3 比例 - 为什么乘以 1 会有所不同?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54139632/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com