Public
Edited
Feb 21, 2023
Fork of ACX Pubs
Importers
Insert cell
Insert cell
Insert cell
cities = FileAttachment("canada_cities_lat-long.csv").csv()
Insert cell
raw_jobs = FileAttachment("Initial Jobs feed.xlsx").xlsx()
Insert cell
xl_jobs = raw_jobs.sheet('Job Feed 2.17', {headers: true})
Insert cell
clean_cities = aq.from(cities)
.spread({
test: d => op.split(d.City, ',')}, {as: ['city', 'province', 'country']
})
.objects()
Insert cell
jobs_lat_long = aq.from(xl_jobs)
.groupby('city')
.count()
.join(aq.from(clean_cities), ['city','city'])
.objects()
Insert cell
Insert cell
canada_divisions = FileAttachment("canada_divisions.geojson").json()
Insert cell
canada_provinces = FileAttachment("canada_provinces.geojson").json()
Insert cell
Insert cell
import {globeF} from "@observablehq/plot-projections"
Insert cell
import {globe} from "@observablehq/plot-projections"
Insert cell
Insert cell
Insert cell
Insert cell
clean = aq.from(raw_data)
.objects()
Insert cell
raw_data = file.csv({typed: true})
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
// this is a really cool way of displaying tables. Much more aesthetically pleasing than the defaults of arquero and input.table

import { formatTable } from "@saneef/pretty-tables"
Insert cell
Insert cell
Insert cell
Insert cell
date_parser = d3.utcParse('%m/%d/%Y')
Insert cell
Insert cell
Insert cell
// sample of how to place html blocks in a grid

// html `<div style="display: grid; grid-template-columns: 1fr 1fr 1fr; column-gap: 0px; row-gap: 5px;">
// ${viewof spend}
// ${viewof cpl}
// ${viewof cpc}
// </div>`
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