Javascript d3.js+nvd3平行坐标拖动轴
所以我在玩d3.js和nvd3。我正在尝试使用nvd3和d3制作一个平行坐标图,在这里可以拖动/重新排列不同的轴。我可以只使用d3制作可拖动轴,但是,如果可能的话,我想使用nvd3来制作,但就我所知,没有办法做到这一点。我使用angularjs指令来实现这一点。此代码创建图表:Javascript d3.js+nvd3平行坐标拖动轴,javascript,d3.js,angularjs-directive,nvd3.js,Javascript,D3.js,Angularjs Directive,Nvd3.js,所以我在玩d3.js和nvd3。我正在尝试使用nvd3和d3制作一个平行坐标图,在这里可以拖动/重新排列不同的轴。我可以只使用d3制作可拖动轴,但是,如果可能的话,我想使用nvd3来制作,但就我所知,没有办法做到这一点。我使用angularjs指令来实现这一点。此代码创建图表: // Extract the dimensions and crate a scale for each dimension. var data = []; var tmpArray = []; for (var i
// Extract the dimensions and crate a scale for each dimension.
var data = [];
var tmpArray = [];
for (var i = 0; i < newVal.AnalysisIn.length; i++) {
data.push(newVal.AnalysisIn[i]);
tmpArray.push(newVal.AnalysisOut[i]);
}
for (var j = 0; j < data.length; j++) {
for (var k = 0; k < tmpArray.length; k++) {
angular.extend(data[j], tmpArray[j]);
}
}
// Set dimensions of each axis
dimensions = d3.keys(data[0]).filter(function (d) {
return d !== 'name' && (y[d] = d3.scale.linear()
.domain(d3.extent(data, function (p) {
return +p[d];
}))
.range([height, 0]));
});
console.log(dimensions);
nv.addGraph(function () {
var chart = nv.models.parallelCoordinates()
.margin(margin)
.height(height)
.width(width)
.dimensions(dimensions);
svg.datum(data)
.call(chart);
return chart;
});
这很好,只是我无法拖动/重新排列轴,也找不到一种方法来执行此操作,如本例所示:
有人知道怎么做吗?非常感谢您的帮助
//Rhanox我最终使用了Syntagmatic的parcoords angular库。在我看来,这就像一个魔咒,比nvd3平行坐标图更容易使用。你能分享一下你是如何做到的吗?