Skip to content

Instantly share code, notes, and snippets.

@oller
Forked from jefffriesen/README.md
Last active February 1, 2017 11:57
Show Gist options
  • Select an option

  • Save oller/da646d7f4c8e78f5c229a9e4001ec415 to your computer and use it in GitHub Desktop.

Select an option

Save oller/da646d7f4c8e78f5c229a9e4001ec415 to your computer and use it in GitHub Desktop.
Chrome SVG Performance Regression

An example of the Chrome performance regression handling complex SVGs

Steps to recreate

<!DOCTYPE html>
<meta charset="utf-8">
<style>
.zip {
fill: white;
stroke: #CCC;
stroke-width: .5px;
cursor: pointer;
}
.zip:hover {
fill: red;
}
</style>
<body>
<script src="http://d3js.org/d3.v3.min.js"></script>
<script src="http://d3js.org/queue.v1.min.js"></script>
<script src="http://d3js.org/topojson.v1.min.js"></script>
<script>
var width = 960,
height = 500;
var path = d3.geo.path();
var svg = d3.select("body").append("svg")
.attr("width", width)
.attr("height", height);
queue()
.defer(d3.json, "zips_us_topo.json")
.await(ready);
function ready(error, us) {
svg.append("g")
.attr("class", "counties")
.selectAll("path")
.data(topojson.feature(us, us.objects.zip_codes_for_the_usa).features)
.enter().append("path")
.attr("class", "zip")
.attr("data-zip", function(d) {return d.properties.zip; })
.attr("data-state", function(d) {return d.properties.state; })
.attr("data-name", function(d) {return d.properties.name; })
.attr("d", path);
}
</script>
</body>
Display the source blob
Display the rendered blob
Raw
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment