Published
Edited
Mar 31, 2021
1 fork
9 stars
Insert cell
Insert cell
md`## All tree cover loss in 2020`
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
padding = 10
Insert cell
Insert cell
hierarchy = d3.hierarchy(data)
.sum(d => d.value)
.sort((a, b) => b.value - a.value)
Insert cell
treeCoverLossHierarchy = d3.hierarchy(treeCoverLossData)
.sum(d => d.value)
.sort((a, b) => b.value - a.value)
Insert cell
packing = squarePacking(hierarchy)
Insert cell
treeCoverPacking = squarePacking(treeCoverLossHierarchy)
Insert cell
Insert cell
data = ({
name: 'World',
children: primaryForest.map(d => {
return {
'name': d.Country,
'value': d['2020']
}
})
})
Insert cell
treeCoverLossData = ({
name: 'World',
children: treeCoverLoss.map(d => {
return {
'name': d.country,
'value': d['2020']
}
})
})
Insert cell
primaryForest = FileAttachment("primary_forest.csv").csv()
Insert cell
treeCoverLoss = FileAttachment("tree_cover_loss.csv").csv()
Insert cell
import {d3, chart, color} from "@d3/circle-packing"
Insert cell
import { boundingBox, SquareArrangement } from "@esperanc/square-packing"
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more