gpt4 book ai didi

javascript - d3.js - 更新轴并更改路径宽度

转载 作者:太空宇宙 更新时间:2023-11-04 13:35:26 25 4
gpt4 key购买 nike

我正在尝试像这样更新轴的宽度:

零宽度的初始设置:

var x2 = d3.scale.linear()
.domain([0, 10])
.range([0, 0])
.clamp(true);

svg.append("g")
.attr("class", "x axis2")
.attr("transform", "translate(0," + height / 2 + ")")
.call(d3.svg.axis()
.scale(x2)
.orient("bottom")
.tickFormat(function(d) { return d; })
.tickSize(0)
.tickPadding(12))
.select(".domain")
.select(function() { return this.parentNode.appendChild(this.cloneNode(true)); })
.attr("class", "bar-highlight");

稍后我想更新路径的宽度(有一个很好的过渡会很棒)。我按照此 answer 中的建议进行了尝试,没有运气:

x2 = d3.scale.linear()
.domain([0, data.page_count])
.range([0, 15])
.clamp(true);

d3.selectAll("g.x.axis2")
.call(x2);

最佳答案

您需要在轴上调用 d3.svg.axis().scale(x2),而不仅仅是 x2。以下更新程序对我有用(尽管是在一个空地 block 上):

// Update the range of existing variable, x2
x2.range([0, 15]);
// Select and change the axis in D3
d3.selectAll("g.x.axis2")
.call(d3.svg.axis().scale(x2));

关于javascript - d3.js - 更新轴并更改路径宽度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23072054/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com