{
landguzzlers.selectAll(".guzzlerects")
.data(data.filter(d => d["title"] != "HAMSTER"))
.join("rect")
.attr("x", 0)
.attr("y", d => (1100 - Math.sqrt(Number(d["footprint"]))*1000))
.attr("width", d => Math.sqrt(Number(d["footprint"]))*1000)
.attr("height", d => Math.sqrt(Number(d["footprint"]))*1000)
.style("fill", (d, i) => colors[i])
.attr("class", "rect");
landguzzlers.selectAll(".guzzlerects")
.data(data.filter(d => d["title"] == "HAMSTER"))
.join("rect")
.attr("x", 0)
.attr("y", d => (1100 - Math.sqrt(Number(d["footprint"]))*600))
.attr("width", d => Math.sqrt(Number(d["footprint"]))*600)
.attr("height", d => Math.sqrt(Number(d["footprint"]))*600)
.style("fill", (d, i) => colors[5])
.attr("class", "rect");
landguzzlers.selectAll(".textminusham")
.data(data.filter(d => d["title"] != "HAMSTER"))
.enter()
.append('text')
.join(".textminusham")
.text(d=>d["title"])
.attr("x", d => (Math.sqrt(Number(d["footprint"]))*1000 - 6))
.attr("y", d => (1100 - Math.sqrt(Number(d["footprint"]))*1000) + 29)
.attr("text-anchor", "end")
.attr("class", "maintext");
landguzzlers.selectAll(".textham")
.data(data.filter(d => d["title"] == "HAMSTER"))
.enter()
.append('text')
.join(".textham")
.text(d=>d["title"])
.attr("x", d => (Math.sqrt(Number(d["footprint"]))*600 + 2))
.attr("y", d => (1100 - Math.sqrt(Number(d["footprint"]))*600) + 20)
.attr("text-anchor", "start")
.attr("class", "hamtext");
landguzzlers.selectAll(".subtext")
.data(data)
.enter()
.append("text")
.join(".subtext")
.text(d=>d["subtitle"])
.attr("x", d => (Math.sqrt(Number(d["footprint"]))*1000 - 30))
.attr("y", d => (1100 - Math.sqrt(Number(d["footprint"]))*1000 + 50))
.attr("text-anchor", "end")
.attr("class", "subtext");
landguzzlers.selectAll(".subtext2")
.data(data)
.enter()
.append("text")
.join(".subtext2")
.text(d=>d["subtitle2"])
.attr("x", d => (Math.sqrt(Number(d["footprint"]))*1000 - 30))
.attr("y", d => (1100 - Math.sqrt(Number(d["footprint"]))*1000 + 70))
.attr("text-anchor", "end")
.attr("class", "subtext");
landguzzlers.selectAll(".subtext3")
.data(data)
.enter()
.append("text")
.join(".subtext3")
.text(d=>d["subtitle3"])
.attr("x", d => (Math.sqrt(Number(d["footprint"]))*1000 - 30))
.attr("y", d => (1100 - Math.sqrt(Number(d["footprint"]))*1000 + 90))
.attr("text-anchor", "end")
.attr("class", "subtext");
landguzzlers.selectAll(".ecoprint")
.data(data.filter(d => (d["title"] != "HAMSTER" && d["title"] != "VOLKSWAGEN GOLF")))
.join("text")
.text((d) => "Eco-footprint: " + d.footprint + " hecares")
.attr("x", (d) => 1100 - Math.sqrt(d.footprint) * 1000 + 32)
.attr("y", (d) => 1100 - Math.sqrt(d.footprint) * 1000 - 1080)
.attr("transform", "rotate(90)")
.attr("class", "subtext2");
landguzzlers.selectAll(".ecoprint")
.data(data.filter(d => d["title"] == "HAMSTER"))
.join("text")
.text((d) => "Eco-footprint:")
.attr("x", d => (Math.sqrt(Number(d["footprint"]))*600 + 2))
.attr("y", d => (1100 - Math.sqrt(Number(d["footprint"]))*600) + 40)
.attr("text-anchor", "start")
.attr("class", "subtext2");
landguzzlers.selectAll(".ecoprint")
.data(data.filter(d => d["title"] == "HAMSTER"))
.join("text")
.text((d) => d.footprint)
.attr("x", d => (Math.sqrt(Number(d["footprint"]))*600 + 2))
.attr("y", d => (1100 - Math.sqrt(Number(d["footprint"]))*600) + 60)
.attr("text-anchor", "start")
.attr("class", "subtext2");
landguzzlers.selectAll(".horlines")
.data(data.filter(d => d["subtitle"] != ""))
.join("line")
.attr("x1", d => (Math.sqrt(Number(d["footprint"]))*1000 - 26))
.attr("x2", d => (Math.sqrt(Number(d["footprint"]))*1000 -350))
.attr("y1", d => (1100 - Math.sqrt(Number(d["footprint"]))*1000) + 31)
.attr("y2", d => (1100 - Math.sqrt(Number(d["footprint"]))*1000) + 31)
.style("stroke", "#fff4ee")
.style("stroke-width", 2)
.style("fill", "none");
landguzzlers.selectAll(".vertlines")
.data(data.filter(d => d["subtitle"] != ""))
.join("line")
.attr("x1", d => (Math.sqrt(Number(d["footprint"]))*1000 - 26))
.attr("x2", d => (Math.sqrt(Number(d["footprint"]))*1000 -26))
.attr("y1", d => (1100 - Math.sqrt(Number(d["footprint"]))*1000) + 31)
.attr("y2", d => (1100 - Math.sqrt(Number(d["footprint"]))*1000) + 101)
.style("stroke", "#fff4ee")
.style("stroke-width", 2)
.style("fill", "none");
}