0
我试图从左到右使用可能弹性补间的页面负载动画我的d3图,但我有点新的d3,并试图学习,所以我相信这是很简单,但我似乎无法找到一个很好的例子来帮助我。如果需要帮助,我附上了html和json。D3动画图onOoad
也很好奇,如果有人知道如何将边框半径效果应用到每个条的右侧来曲线的边缘?
<html>
<head>
<script src="http://d3js.org/d3.v3.min.js"></script>
<style>
.canvas {background: #03ff01;
height: 30em;
width:70em;
float: left;
position: absolute;
z-index:-1;
}
svg {padding-top:3em;
stroke:black;
stroke-width:1;
shape-rendering: crispEdges;}
</style>
</head>
<body>
<div class = "canvas">
<script>
d3.json("mydata2.json", function(data){
var fill = d3.scale.category10();
var canvas = d3.select("body").append("svg")
.attr("width", 1000)
.attr("height", 1000)
canvas.selectAll("rect")
.data(data)
.enter()
.append("rect")
.attr("width", function (d) { return d.amount * 10; })
.attr("height", 46)
.attr("y", function (d, i) {return i * 50;})
.style("fill", function(d, i) { return fill(i); })
canvas.selectAll("text")
.data(data)
.enter()
.append("text")
.style("font-family", "Impact")
.style("font-size", function(d) { return d.size + "px"; })
.attr("fill", "White")
.attr("x", function (d, i) {return i + 10; })
.attr("y", function (d, i) {return i * 50 + 28; })
.text (function (d) {return d.name +": $" +d.amount;})
})
</script>
</div>
</body>
</html>
//JSON FILE CODE
mydata2.json
[
{"name": "Maria", "amount": 30},
{"name": "Fred", "amount": 50},
{"name": "Francis", "amount": 12},
{"name": "Gerry", "amount": 68},
{"name": "Tony", "amount": 90}
]
非常感谢你的工作,试图现在应用相同延迟的文本出现在每个栏内淡入当每个栏加载。任何想法或建议?再次感谢 :) – BrianTGT 2014-11-16 19:25:34