D3.js 为什么没有parseInt的d3.extent返回最大值";9“;在Bob Ross数据集上的列num_colors上?

D3.js 为什么没有parseInt的d3.extent返回最大值";9“;在Bob Ross数据集上的列num_colors上?,d3.js,D3.js,使用此数据集(),我希望获得列的最小值和最大值: num_颜色 使用d3.extent()我能够实现它,值是字符串化的,需要首先解析。 但是为什么它不带parseInt返回“9” num_颜色的可能值如下所示: 1,3,4,5,6,7,8,9,10,11,12,13,14,15 const dataset = await d3.csv("./bob_ross_paintings.csv") const x1 = d => d.num_colors console.l

使用此数据集(),我希望获得列的最小值和最大值:

  • num_颜色
使用d3.extent()我能够实现它,值是字符串化的,需要首先解析。 但是为什么它不带parseInt返回“9”

num_颜色的可能值如下所示: 1,3,4,5,6,7,8,9,10,11,12,13,14,15

const dataset = await d3.csv("./bob_ross_paintings.csv")
const x1 = d => d.num_colors
console.log(d3.extent(dataset, yAccessor))
// ["1", "9"]

const x2 = d => parseInt(d.num_colors)
console.log(d3.extent(dataset, yAccessor))
// [1, 15]

没有parseIntd3.extent将num_颜色解释为字符串值并按字母顺序排序

我最后做了一个测试,将可能的值放入字符串并排序。最后一个值是“9”。谢谢你的提示!代码如下:constx3=[“1”、“3”、“4”、“5”、“6”、“7”、“8”、“9”、“10”、“11”、“12”、“13”、“14”、“15”];x3.sort();