Charts and analytics

An analytic is a chart (or a row of figures, or a table) worked out from your live schedule: labor hours per week against what your crew can work, an S-curve of planned against earned progress, activities by total float, the forecast finish across every update. Analytics re-run whenever the schedule changes, so nothing is ever exported and pasted.

You can build one yourself in the analytic editor, but the quickest way is to describe it to Owl. Owl writes the analytic, checks the numbers, and opens it in its own tab.


What an analytic is made of

Every analytic is the same four parts, read in the same order as the chart:

PartWhat it saysExample
X axisWhat runs along the bottom.Dates by week, WBS phases, schedule updates
SeriesEach thing drawn on it: a value, how it's shown, how it's drawn, and (for one series) what splits it.Planned hours per week, drawn as steps, by resource
Compare withAnother schedule to draw every series on too.The baseline, a named revision, a scenario
FilterWhich activities count.Only critical work, only open activities

The x axis can be:

  • Dates — the schedule's timeline, by day, week, month, quarter or year. A lookahead limits it to a number of days from the data date.
  • A field — one bar per value of a field: a WBS level, a task code, status, resource.
  • Ranges of a number — a histogram, such as activities by total float.
  • Schedule updates — one point per update, for trends like the forecast finish.
  • Each activity — one row per activity, a table (a lookahead list, milestones against the baseline).
  • Nothing — no axis, just figures: a row of KPI tiles.

Note: Owl works out the axes for you. The first unit drawn (hours, days, dollars) reads on the left axis, a second unit gets a right axis. A third unit is refused with a suggestion, such as showing it as a % of its total.


Ask Owl for an analytic

Say what to measure, how to group it, and what to compare it with. Owl builds the analytic, runs it, reads the numbers back to you, and points out anything odd it sees in them.

Ask Owl
Chart planned labor hours per week by resource against available hours.
Make an S-curve of planned vs earned progress against the baseline.
Show finishes per week for the next six weeks, split by status.
Bar chart of open activities by WBS phase.
Compare weekly hours with the Derisked Schedule scenario.
Put it on a new dashboard called Crew Planning.

The analytic below came from one message: "Chart planned labor hours per week by resource against available hours, compared with the Derisked Schedule scenario. Put it on a new dashboard called Crew Planning." Owl added it to the Analytics list, made the Crew Planning dashboard, and explained what it found: the peak week runs well over the crew's available hours, and in the Derisked Schedule the same peak moves about nine weeks later.

New analytics and dashboards appear in the project tree as soon as Owl makes them, and an analytic that is already open updates in place when Owl changes it.


Read an analytic

Open any analytic from Analytics in the project tree. It opens in its own tab: the chart in the middle, the numbers under it, and the editor on the right.

"An analytic in its own tab: weekly planned hours by resource as stacked steps under a dashed available-hours limit, with the Derisked Schedule scenario as a dashed ghost; the numbers table below; the editor on the right."12345671The title and a one-line summary of the spec: Dates · week · 2 series · by Resource · vs Derisked Schedule · can show under the Gantt.2Current schedule runs the whole analytic on a scenario instead.3The chart. Each series is numbered in the legend: 1 planned hours, split by resource, with its Derisked Schedule ghost (dashed), and 2 available hours, drawn as a limit.4The numbers — every value the chart draws, period by period. Copy puts them on your clipboard for a spreadsheet.5X axis — dates by week, with an optional lookahead.6A series card: its value, how it's shown, how it's drawn, and what splits it.7Compare with — another schedule, further down the editor.

A few things to look for:

  • The legend numbers (1, 2, 3) match the series cards in the editor and the rows of The numbers.
  • A dashed line or outline is the compared schedule — here, the Derisked Schedule's total hours each week.
  • A limit is a ceiling drawn as a dashed step, labeled at its end ("Available 616h"); whatever stacks above it is over capacity.
  • The summary line under the title says, in words, what the analytic is: its axis, how many series, what it's split by and compared with, and whether it can be a lane under the Gantt.

Change an analytic in the editor

Every change shows up in the chart straight away. Nothing is stored until you click Save changes (or Save analytic for a new one). To start from scratch, use the + on Analytics in the project tree, or Add analytic → New analytic… on a dashboard.

Series

Click Add series to add one. You can start from:

The Add series menu: A field, A formula of the series above, A fixed line, and Copy the selected series.The Add series menu: A field, A formula of the series above, A fixed line, and Copy the selected series.

  • A field — a sum, count or average of something in the schedule: activity counts, durations, float, planned hours, cost.
  • A formula of the series above — a value worked out from the other series, point by point. With series named ev and pv, the formula [ev] / [pv] gives each month's ratio.
  • A fixed line — a target or a zero line.
  • Copy — a copy of an existing series, to change one thing about it.

Each series card then has:

  • Value — what is added up. Values over time, such as Planned hours over time, come from formula columns; Edit its formula opens the formula above the chart.
  • Show as — Per week (each period's own amount), Running total, or % of total (the running total as a share of its own total, or of another series' total: that's how an S-curve shows earned as a percent of planned).
  • Draw as — how it's drawn. Options that don't fit the series are greyed out with the reason.
  • Split by — layers the series by a field (resource, status, a WBS level, a task code) and keeps the top few values, with the rest in Other. Only one series per analytic can be split.
  • Only — a filter for this series alone, on top of the analytic's filter.
  • Stop at the data date — leaves the series blank after the data date, for what has actually happened.
  • Label — the name in the legend.

The Draw as menu for a series on dates: Steps, Bars and Line, with Limit, Heatmap and Line of balance greyed out and the reason under each.The Draw as menu for a series on dates: Steps, Bars and Line, with Limit, Heatmap and Line of balance greyed out and the reason under each.

The ways to draw a series:

Draw asUse it for
StepsAmounts that belong to a whole period, like hours per week. Split layers stack.
BarsSeparate bars per period or per value.
LineS-curves, trends and ratios.
LimitA ceiling such as available hours. Anything stacked above it is shaded as over.
HeatmapOne row per value of the split against time; darker means more.
Line of balanceEach location's first start to last finish over time (split by an ordered location field).
ShareParts of one whole as a single 100% bar.
TileA single figure, with its change since the last update and against the compared schedule.
ColumnA column in a table of activities.
RangeEach milestone's finish against the compared schedule, or a simulation's P10–P90 when it compares with one.

Values over time

A value that changes over time — hours per week, cost per month, earned progress — is a formula column made with SPREAD. Every project starts with these, and you can open and change them like any formula column:

ColumnWhat it spreads over time
Duration over timeEach activity's duration over its working days (the planned S-curve).
Late duration over timeThe same over its late dates.
Earned duration over timeThe done part of each activity, up to the data date.
Planned hours / cost over timeEach assignment's hours (and hours × rate) over the activity's working days.
Actual hours / cost over timeHours and cost spent so far, over the actual dates.
Forecast hours over timeHours spent where they were spent, plus what's left from the data date on.
Available hours over timeEach labor resource's working hours over the project, times its max units per time (a crew of three has three times the hours): the limit planned hours are drawn under.

Planned hours over time, for example, is:

SPREAD([Budgeted units], Task[Start date], Task[Finish date])

each assignment's hours spread evenly over its activity's working days. Anything you can write as a column over time, you can chart. See Values over time for how SPREAD and its relatives work.

Tip: If the number you want isn't in the field list, make a formula column for it first in the grid (Columns, filters, colors and views), then chart that column.

Compare with another schedule

Under Compare with, click Add and pick a schedule. Every series is worked out again on that schedule, by the same engine, from its own activities and assignments, and drawn beside itself.

"The schedule picker under Compare with: Baseline, a September update revision, and five scenarios, with Ghost and Difference below."121Pick the Baseline, a named revision, or a scenario.2Ghost draws the other schedule beside each series (a dashed line or outline); Difference draws this schedule minus that one.

A limit, and any series you take out from its ⋯ menu, is never compared. Over Schedule updates there is nothing to compare with: the history already is the comparison.

Filter

Filter at the bottom of the editor limits every series to the activities you choose, with the same filter builder as the schedule. On a dashboard, the dashboard's own filter is added to it.


Show an analytic under the Gantt

An analytic over dates, drawn as steps, bars, lines or limits, can be a lane under the Gantt, lined up with the timeline above it. The analytic's summary line says can show under the Gantt when it qualifies.

Open Lanes on the schedule toolbar and tick the analytics you want. Lanes that are on come first; drag them to reorder. The ones that can't be lanes are listed greyed out, each with the reason ("x is a field", "draws a heatmap").

The Lanes menu: eight analytics over dates that can be lanes, and the rest greyed out with the reason each can't.The Lanes menu: eight analytics over dates that can be lanes, and the rest greyed out with the reason each can't.

"The Gantt at WBS level 3 with the Hours by week analytic as a lane underneath, its weekly hours stacked by resource under a dashed available-hours line, lined up with the timeline."1231Lanes on the toolbar turns lanes on and off (here 1 is on).2The lane uses the Gantt's own timeline, so the December peak sits under the work that causes it.3Change the split right on the lane.

Lanes are saved with your saved view, so a "Resource loading" view can open with its lanes already on.

Ask Owl
Make a lane of weekly hours by resource that I can show under the Gantt.

Put analytics on a dashboard

A dashboard arranges several analytics on one page with shared controls: run them all against a scenario, or filter them all at once. Dashboards are covered in Create custom dashboards.


What to do next