html5 boiler plate
[scannr.git] / js / flotr2 / README.md
blob:a/js/flotr2/README.md -> blob:b/js/flotr2/README.md
  Flotr2
  ======
   
  The Canvas graphing library.
   
  ![Google Groups](http://groups.google.com/intl/en/images/logos/groups_logo_sm.gif)
   
  http://groups.google.com/group/flotr2/
   
  Please fork http://jsfiddle.net/cesutherland/ZFBj5/ with your question or bug reproduction case.
   
   
  API
  ---
   
  The API consists of a primary draw method which accepts a configuration object, helper methods, and several microlibs.
   
  ### Example
   
  ```javascript
  var
  // Container div:
  container = document.getElementById("flotr-example-graph"),
  // First data series:
  d1 = [[0, 3], [4, 8], [8, 5], [9, 13]],
  // Second data series:
  d2 = [],
  // A couple flotr configuration options:
  options = {
  xaxis: {
  minorTickFreq: 4
  },
  grid: {
  minorVerticalLines: true
  }
  },
  i, graph;
   
  // Generated second data set:
  for (i = 0; i < 14; i += 0.5) {
  d2.push([i, Math.sin(i)]);
  }
   
  // Draw the graph:
  graph = Flotr.draw(
  container, // Container element
  [ d1, d2 ], // Array of data series
  options // Configuration options
  );
  ```
   
  ### Microlibs
   
  * [underscore.js](http://documentcloud.github.com/underscore/)
  * [bean.js](https://github.com/fat/bean)
   
  Extending
  ---------
   
  Flotr may be extended by adding new plugins and graph types.
   
  ### Graph Types
   
  Graph types define how a particular chart is rendered. Examples include line, bar, pie.
   
  Existing graph types are found in `js/types/`.
   
  ### Plugins
   
  Plugins extend the core of flotr with new functionality. They can add interactions, new decorations, etc. Examples
  include titles, labels and selection.
   
  The plugins included are found in `js/plugins/`.
   
  Development
  -----------
   
  This project uses [smoosh](https://github.com/fat/smoosh) to build and [jasmine](http://pivotal.github.com/jasmine/)
  with [js-imagediff](https://github.com/HumbleSoftware/js-imagediff) to test. Tests may be executed by
  [jasmine-headless-webkit](http://johnbintz.github.com/jasmine-headless-webkit/) with
  `cd spec; jasmine-headless-webkit -j jasmine.yml -c` or by a browser by navigating to
  `flotr2/spec/SpecRunner.html`.
   
  Shoutouts
  ---------
   
  Thanks to Bas Wenneker, Fabien Ménager and others for all the work on the original Flotr.
  Thanks to Jochen Berger and Jordan Santell for their contributions to Flotr2.