0

我很难找到一种方法来从 syntagmatic 的 parcoords 代码中的刷轴获取绝对值而不是 strum 的本地位置和大小。

到目前为止,我想出了一种方法来获取后者(即 y 位置(dyanimVal.value,strum 的上部位置)和高度(d.height.animVal.value,strum 的长度)),但不是从映射的数据。

目前,我的方法依赖于以下函数,放置在示例 html 文件之一中:

function getBrushData() {
  var myElementd3 = d3.selectAll("rect.extent"); //gets any strum
  myElementd3[0].forEach(function(d,i) { 
    if ( d.height.animVal.value !== 0 ) {  //adds the strum data to array if brush exists
      cursor=cursor+1;
      myArray[cursor] = "" + d.__data__ + ", " + d.y.animVal.value + ", " + d.height.animVal.value;
    }
  });
  return myArray, cursor;
}

我想我可以根据轴的绝对最小值/最大值以某种方式转换 y 和 height 值,但即使是那些,我也找不到自动访问的方法。

所以我的问题是:有什么简单的方法可以自动从弹奏的末端而不是本地的末端获取绝对值?谢谢你的帮助!

4

1 回答 1

1

要从画笔范围中获取相应的画笔范围最大值/最小值,可以使用不传递参数的 BrushExtents() 函数。

parcoords.brushExtents() 这将返回一个包含所有已刷过的轴及其关联的最大/最小值的数组。

于 2017-02-08T03:42:55.857 回答