Built with blockbuilder.org
forked from jbelmont's block: Enter and Append
license: mit |
Built with blockbuilder.org
forked from jbelmont's block: Enter and Append
<!DOCTYPE html> | |
<head> | |
<meta charset="utf-8"> | |
<script src="https://d3js.org/d3.v4.min.js"></script> | |
<style> | |
body { margin:0;position:fixed;top:0;right:0;bottom:0;left:0; } | |
svg { | |
width: 100%; | |
height: 100%; | |
} | |
</style> | |
</head> | |
<body> | |
<svg> | |
<rect /> | |
<rect /> | |
</svg> | |
<script> | |
const width = 100; | |
const height = 200; | |
const data = [50, 75, 100, 125, 200]; | |
const svg = d3.select('svg'); | |
// this is grabbing an empty selection | |
const enter = svg.selectAll('rect') | |
.data(data) | |
.enter().append('rect') | |
.attr('x', (d, i) => i * width) | |
.attr('y', d => height - d) | |
.attr('width', width) | |
.attr('height', d => d) | |
.attr('fill', d => d === 100 ? 'blue' : 'red') | |
.attr('stroke', '#85ff60'); | |
console.log(enter); | |
</script> | |
</body> |