Skip to content

Instantly share code, notes, and snippets.

@denisemauldin
Last active April 12, 2018 22:11
Show Gist options
  • Save denisemauldin/a2f5b3607fd7c30697fd10e14e6fceed to your computer and use it in GitHub Desktop.
Save denisemauldin/a2f5b3607fd7c30697fd10e14e6fceed to your computer and use it in GitHub Desktop.
text replacement
license: mit
<!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; }
</style>
</head>
<body>
<script>
// Feel free to change or delete any of the code you see in this editor!
var svg = d3.select("body").append("svg")
.attr("width", 960)
.attr("height", 500)
var g = svg.append('g').attr('class', 'inner-info')
let data = {
firstName: "Tender",
lastName: "Branson"
}
function update(data) {
let infoUpdate = g.selectAll('.primaryText')
.data([data], function(d) { return d });
// EXIT
infoUpdate.exit().remove();
// UPDATE
infoUpdate.text(function(d) {
return d.firstName;
});
// ENTER
infoUpdate.enter().append('text')
.attr('class', 'primaryText')
.attr('text-anchor', 'middle')
.attr('x', 50)
.attr('y', 10)
.attr('dy', '.5rem')
.text((d) => {
return d.firstName;
});
}
update(data);
setTimeout(() => {
update({firstName: "Denise", lastName: "Mauldin"});
}, 3000);
</script>
</body>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment