Platform
Resources
Pricing
Sign in
Contact us
Templates /
Startup Operating Model
Sign up to use template
Observable
The end-to-end solution for building and hosting better data apps, dashboards, and reports.
Workspace
Published
2 collections
By
Toph Tucker
Edited
ISC
55 forks
40 stars
2
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
Insert cell
hiringData
=
(
await
FileAttachment
(
"payroll.csv"
)
.
csv
(
)
)
.
map
(
autoTypeExcel
)
Insert cell
Insert cell
Insert cell
Insert cell
mrrActual
=
(
await
FileAttachment
(
"mrrActual@1.csv"
)
.
csv
(
)
)
.
map
(
autoTypeExcel
)
Insert cell
Insert cell
Insert cell
Insert cell
domain
=
[
new
Date
(
Date
.
UTC
(
2021
,
0
,
1
)
)
,
new
Date
(
Date
.
UTC
(
2022
,
0
,
1
)
)
]
Insert cell
asOf
=
new
Date
(
Date
.
UTC
(
2021
,
4
,
25
)
)
Insert cell
Insert cell
Insert cell
import
{
viewof
hiring
,
payroll
,
summary
as
hiringSummary
}
with
{
domain
,
asOf
,
hiringData
as
data
}
from
"433c356a8f929477"
Insert cell
Insert cell
mrr
=
mrrTarget
.
diff
.
map
(
(
{
date
,
value
}
,
i
)
=>
(
{
date
,
target
:
value
,
actual
:
mrrActual
[
i
]
?.
value
}
)
)
Insert cell
mrrStart
=
mrrActual
[
0
]
.
value
Insert cell
import
{
chart
as
mrrSpline
,
flow
as
mrrTarget
}
with
{
domain
as
timeDomain
,
mrrStart
as
start
}
from
"7fc65adc09109fe5"
Insert cell
Insert cell
vc
=
[
{
date
:
new
Date
(
cashDate
)
,
value
:
cash
*
1000
}
]
Insert cell
totalActual
=
rollupByMonth
(
[
vc
,
payroll
.
diff
,
mrrActual
]
)
.
filter
(
(
{
date
}
)
=>
date
<=
asOf
)
Insert cell
totalActualCum
=
cumsum
(
totalActual
)
Insert cell
totalTarget
=
rollupByMonth
(
[
vc
,
payroll
.
diff
,
mrrTarget
.
diff
]
)
Insert cell
totalTargetCum
=
cumsum
(
totalTarget
)
Insert cell
totalTargetActuals
=
zip
(
{
target
:
totalTargetCum
,
actual
:
totalActualCum
}
)
Insert cell
import
{
TargetsVsActuals
}
from
"@observablehq/targets-vs-actuals"
Insert cell
import
{
Table
}
from
"@observablehq/table-validator"
Insert cell
import
{
longMonth
,
dateFormat
,
autoTypeExcel
,
rollupByMonth
,
zip
,
cumsum
,
zero
}
from
"@observablehq/cash-flow"
Insert cell
import
{
toc
}
from
"@observablehq/templates-table-of-instructions"
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.
Try it for free
Learn more