【发布时间】:2014-05-30 13:39:04
【问题描述】:
我正在尝试创建一个简单的条形图,当您更改滑块值时会更新,我遇到了几个问题。我不知道如何在更改滑块而不绘制全新的 svg 元素从而创建两个、三个四个元素时更新 svg 元素的属性.....
您可以在jsfiddle查看它
这是我的代码
$( "#slider" ).slider({ max: 50 });
$( "#slider" ).slider({ min: 10 });
$( "#slider" ).slider({
change: function( event, ui ) {
var selection = $( "#slider" ).slider( "value" );
console.log(selection);
//Width and height
var w = 500;
var h = 50;
//Data
var dataset = [];
dataset.push(selection);
console.log(dataset);
//Create SVG element
var svg = d3.select("body")
.append("svg")
.attr("width", 500)
.attr("height", 50);
var rectangle = svg.selectAll("rect")
.data(dataset)
.enter()
.append("rect");
rectangle.attr("width", 20)
.attr("height", function(d){
return d;
})
.attr("x", function(d){
return 20;
})
.attr("y", function(d){
return 20;
});
}
});
【问题讨论】:
-
嗨,我在小提琴中做了一个微小但重要的改变,我认为你可能会喜欢:听幻灯片事件而不是改变一个使对滑动动作的响应连续的(在我的意见,更愉快)。我将其添加到帖子中。看看吧。
标签: javascript jquery-ui graph d3.js slider