Zoomable冰柱d3从右到左

时间:2016-12-21 08:42:09

标签: javascript d3.js

如何从右到左更改此link的对齐方式?

现在对齐是从上到下

1 个答案:

答案 0 :(得分:4)

而不是:

var x = d3.scale.linear()
    .range([0, width]);

必须是:

var x = d3.scale.linear()
    .range([width, 0]);

编辑:如果你想要从右到左的冰柱(右边的父母,左边的孩子),这就是你要做的:

首先,反转y标度的范围:

var y = d3.scale.linear()
    .range([height,0]);

并反转矩形的所有属性:

rect = rect
  .data(partition(d3.entries(root)[0]))
.enter().append("rect")
  .attr("y", function(d) { return x(d.x); })
  .attr("x", function(d) { return y(d.y); })
  .attr("height", function(d) { return x(d.dx); })
  .attr("width", function(d) { return y(d.dy); })
  .attr("fill", function(d) { return color((d.children ? d : d.parent).key); })
  .on("click", clicked);

这是一个显示它的小提琴:https://jsfiddle.net/dLeq2q2d/

PS:变焦将不再起作用,你也必须改变它。