Page MenuHomePhabricator

Add chart functions "x()" and "constant(3)"
ClosedPublic

Authored by epriestley on Apr 17 2019, 2:04 PM.
Tags
None
Referenced Files
F18829363: D20443.diff
Fri, Oct 24, 9:26 PM
F18829302: D20443.diff
Fri, Oct 24, 9:02 PM
F18822256: D20443.id.diff
Thu, Oct 23, 5:22 AM
F18819791: D20443.diff
Wed, Oct 22, 9:38 AM
F18770921: D20443.id.diff
Wed, Oct 8, 4:11 PM
F18705635: D20443.id48801.diff
Sep 28 2025, 12:19 PM
F18607959: D20443.id48750.diff
Sep 14 2025, 12:37 AM
F18603499: D20443.id48801.diff
Sep 13 2025, 5:23 PM
Subscribers

Details

Summary

Depends on D20442. Ref T13279. Add basic support for drawing chart functions that are not based on Facts first-party ETL datasets. Some general goals:

  • This might be useful to draw a line like "goal" or "profitability".
  • This might be useful to pull data from an external source.
  • For composable functions like "add" or "subtract", which are useful in manipulating ETL datasets, these value functions will make testing easier.
Test Plan

Added a constant(256) function:

Screen Shot 2019-04-17 at 7.00.27 AM.png (1×1 px, 189 KB)

Diff Detail

Repository
rP Phabricator
Lint
Lint Not Applicable
Unit
Tests Not Applicable

Event Timeline

amckinley added inline comments.
src/applications/fact/chart/PhabricatorConstantChartFunction.php
31

Not sure how I feel about passing $limit here. Won't every chart function basically copy/paste the rest of the code in this function?

33–34

Also it's not obvious to me why $limit gets passed as an argument but the axis is an instance variable on this object.

src/applications/fact/controller/PhabricatorFactChartController.php
24

This is setting the default argument to 256, right? I was looking for some reason why this to be a power of 2, maybe pick a different constant like 42?

This revision is now accepted and ready to land.Apr 17 2019, 11:16 PM
src/applications/fact/chart/PhabricatorConstantChartFunction.php
33–34

Yeah, this changes in the ~next diff.

src/applications/fact/controller/PhabricatorFactChartController.php
24

This is just drawing a visible line on the "demo" chart. 256 just happened to produce a reasonable line in the middle of the data on my local instance.

This revision was automatically updated to reflect the committed changes.