Skip to content
This repository has been archived by the owner on Dec 27, 2022. It is now read-only.

Composite graphs #10

Open
obfuscurity opened this issue May 3, 2012 · 7 comments
Open

Composite graphs #10

obfuscurity opened this issue May 3, 2012 · 7 comments
Assignees

Comments

@obfuscurity
Copy link
Owner

Support stacked and/or multi-metric line graphs.

@smgt
Copy link

smgt commented May 8, 2012

You can use the Graphite API to solve many of these problems. For example to combine two metrics into one you can use sumSeries(stat.first, stat.second) as target.

@obfuscurity
Copy link
Owner Author

That just returns a single metric. I'm talking about tasseo graphs with multiple metrics.

@smgt
Copy link

smgt commented May 8, 2012

Ah! Now I understand what you mean.

On Tuesday 8 May 2012 at 16:44, Jason Dixon wrote:

That just returns a single metric. I'm talking about tasseo graphs with multiple metrics.


Reply to this email directly or view it on GitHub:
#10 (comment)

@obfuscurity
Copy link
Owner Author

Started a proof of concept. Click on a metric and it pops open a large "tactical" line graph and toggles that metric on or off. lStill a lot of work to do with hover, legend, etc.

tactical graph

@ghost ghost assigned obfuscurity Sep 15, 2012
@errordeveloper
Copy link
Contributor

👍

@obfuscurity
Copy link
Owner Author

Man I need to get back on that. And while I'm at it, maybe move to using Bootstrap as a grid provider. Oh, and drag-and-drop. Shit, that way lies madness...

@errordeveloper
Copy link
Contributor

Well, doing stacked graphs and such likees would be the first step ... suppose it would quite easy with Rickshaw, but will need to make some enhancements to the base data structures (i.e. datum/aliases)

could try something like this:

function constructGraphs() {
  for (var i=0; i<realMetrics.length; i++) {
    if (realMetrics[i] instanceof Array) {
      aliases[i] = [];
      descriptions[i] = [];
      datum[i] = [];
      for (var j=0; j<ealMetrics[i].length; j++) {
        aliases[i][j] = realMetrics[i][j].alias || realMetrics[i][j].target;
        descriptions[i][j] = realMetrics[i][j].description || null;
        datum[i][j] = { x:0, y:0 };
        var series = [{
          name: aliases[i][j],
          color: normalColorPalette[j],
          data: datum[i][j],
        }];
    } else {
      aliases[i] = realMetrics[i].alias || realMetrics[i].target;
      descriptions[i] = realMetrics[i].description || null;
      datum[i] = [{ x:0, y:0 }];
      var series = [{
        name: aliases[i],
        color: normalColorPalette[0],
        data: datum[i]
      }];
    }
    graphs[i] = new Rickshaw.Graph({
      element: document.querySelector('.graph' + i),
      width: 348,
      height: 100,
      interpolation: 'step-after',
      renderer: 'area',
      stroke: true,
      series: series,
    });
    graphs[i].render();
  }
}

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Projects
None yet
Development

No branches or pull requests

3 participants