d3.js中的y0命名约定-这些变量用于什么?如何最好地解释它?

d3.js中的y0命名约定-这些变量用于什么?如何最好地解释它?,d3.js,naming-conventions,D3.js,Naming Conventions,我注意到d3.js示例中的y0、y1等命名约定,例如 为了帮助我(一个初学者!)更详细地理解代码,我已经详细地描述了代码(如果这是一个单词的话) 但我不确定如何最好地描述y0 etc命名约定?它们只是前一个数据块和下一个数据块的位置吗 例如,我扩展了这段代码: data.forEach(function(d) { var y0 = 0; d.ages = color.domain().map(function(name) { return {name: name, y0: y0,

我注意到d3.js示例中的y0、y1等命名约定,例如

为了帮助我(一个初学者!)更详细地理解代码,我已经详细地描述了代码(如果这是一个单词的话)

但我不确定如何最好地描述y0 etc命名约定?它们只是前一个数据块和下一个数据块的位置吗

例如,我扩展了这段代码:

data.forEach(function(d) {
    var y0 = 0;
    d.ages = color.domain().map(function(name) { return {name: name, y0: y0, y1: y0 += +d[name]}; });
    d.ages.forEach(function(d) { d.y0 /= y0; d.y1 /= y0; });
  });
以便于了解变量的范围是如何使用的,例如:。
y0+=+d[name]}虽然一开始我发现很难看到一段简洁的代码,但外部y0的更新与y1的更新是同步的

data.forEach(function(d) {
    var y0 = 0;

    d.stats = color.domain().map(function(name) {
        var y1 = y0 + (+d[name]);

        var stat = {
            id: name, 
            y0: y0,
            y1: y1,
        };

        y0 = y1;

        return stat;
    });

    d.stats.forEach(function(stat) { 
        stat.y0 = stat.y0 / y0;
        stat.y1 = stat.y1 / y0; 
    });

 });
我认为我的小重写是可以的(至少最后的可视化看起来是一样的-但是如果我错了,请纠正我)


我发现唯一难以用代码解释的是y0、y1等。

这并不是一个普遍的惯例。在这种特殊情况下,
y0
表示条形图的较低y值,
y1
表示较高y值。

这实际上不是一般惯例。在这种特殊情况下,
y0
指的是条形图的较低y值,
y1
指的是较高y值。很酷,谢谢Lars,这对我来说已经足够好了。如果你把它作为一个回应,我会给你一些分数:-)好的,可以,谢谢:)