Published
Edited
Jul 7, 2021
Also listed in…
Projections
Insert cell
Insert cell
Insert cell
Insert cell
function tany(y) {
return tan((halfPi + y) / 2);
}
Insert cell
projection = d3
.geoConicConformal()
.parallels([35, 65])
.rotate([-20, 0])
.scale(width)
.center([0, 52])
.translate([width / 2, height / 2])
.clipExtent([[0, 0], [width, height]])
.precision(0.2)
Insert cell
// https://visibleearth.nasa.gov/images/57730/the-blue-marble-land-surface-ocean-color-and-sea-ice/57732l
image = FileAttachment("land_ocean_ice_2048.jpg")
.image()
.then(d => Object.assign(d, { style: "max-height:100px" }))
Insert cell
height = width * 0.6
Insert cell
import { reglCanvas, createDrawCommand, regl } with {
width,
height,
projection,
glproj,
image
} from "@fil/phytoplankton"
Insert cell
d3 = require("d3@7", "d3-geo-projection@3")
Insert cell
import { checkbox, radio, select } from "@jashkenas/inputs"
Insert cell
import {
atan2,
cos,
degrees,
halfPi,
log,
pow,
radians,
sin,
sqrt,
tan
} from "@fil/math"
Insert cell
import { drag } from "@d3/versor-dragging"
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