X-Git-Url: https://adrianiainlam.tk/git/?a=blobdiff_plain;f=docs%2Findex.html;h=b0aceb3a6c2a291c219b0eb74716519c600eeaba;hb=412a1974cdd21820743eb9b2e1dff0c1ab4b8e21;hp=0c80ef482679a59dc831f45f15059a5c2323c976;hpb=738fc7978116b8efd342103f90b0a853e95179a9;p=dygraphs.git diff --git a/docs/index.html b/docs/index.html index 0c80ef4..b0aceb3 100644 --- a/docs/index.html +++ b/docs/index.html @@ -27,7 +27,7 @@ code.google.com/p/dygraphs

-

The dygraphs JavaScript library produces produces interactive, zoomable charts of time series based on CSV files.

+

The dygraphs JavaScript library produces produces interactive, zoomable charts of time series.

Features

Caveats

@@ -58,9 +59,10 @@ g = new DateGraph( document.getElementById("demodiv"), function() { + var zp = function(x) { if (x < 10) return "0"+x; else return x; }; var r = "date,parabola,line,another line,sine wave\n"; for (var i=1; i<=31; i++) { - r += "200610" + i; + r += "200610" + zp(i); r += "," + 10*(i*(31-i)); r += "," + 10*(8*i); r += "," + 10*(250 - 8*i); @@ -86,7 +88,7 @@

Usage

-

The DateGraph library depends on two other JS libraries: MochiKit and PlotKit. Rather than tracking down copies of these libraries, I recommend using a packed version of dygraphs that combines all three libraries into a single JS file. Either grab this file from dygraph project's downloads page or create it yourself by checking out a copy of the code and running: +

The dygraphs library depends on two other JS libraries: MochiKit and PlotKit. Rather than tracking down copies of these libraries, I recommend using a packed version of dygraphs that combines all three libraries into a single JS file. Either grab this file from dygraph project's downloads page or create it yourself by checking out a copy of the code and running:

./generate-combined.sh
@@ -103,39 +105,33 @@ <script type="text/javascript" src="combined.js"></script> </head> <body> -<div id="graphdiv" style="width:400px; height:300px;"></div> +<div id="graphdiv"></div> <script type="text/javascript"> - g = new DateGraph( + g = new Dygraph( document.getElementById("graphdiv"), // containing div - function() { // function or path to CSV file. - return "20080507,75\n" + - "20080508,70\n" + - "20080509,80\n"; - }, - [ "Temperature" ], // names of data series - {} // additional options (see below) + "Date,Temperature\n" + // CSV or path to a CSV file. + "20080507,75\n" + + "20080508,70\n" + + "20080509,80\n", ); </script> </body> </html> -
+
-

In order to keep this example self-contained, the second parameter is a function that returns CSV data. These lines must begin with a date in the form YYYYMMDD. In most applications, it makes more sense to include a CSV file instead. If the second parameter to the constructor is a string, it will be interpreted as the path to a CSV file. The DateGraph will perform an XMLHttpRequest to retrieve this file and display the data when it becomes available. Make sure your CSV file is readable and serving from a place that understands XMLHttpRequest's! In particular, you cannot specify a CSV file using "file:///". Here's an example: (data from Weather Underground)

+

In order to keep this example self-contained, the second parameter is a function that returns CSV data. These lines must begin with a date in the form YYYYMMDD. In most applications, it makes more sense to include a CSV file instead. If the second parameter to the constructor is a string, it will be interpreted as the path to a CSV file. The Dygraph will perform an XMLHttpRequest to retrieve this file and display the data when it becomes available. Make sure your CSV file is readable and serving from a place that understands XMLHttpRequest's! In particular, you cannot specify a CSV file using "file:///". Here's an example: (data from Weather Underground)

@@ -150,11 +146,10 @@ <body> <div id="graphdiv" style="width:600px; height:300px;"></div> <script type="text/javascript"> - g = new DateGraph( + g = new Dygraph( document.getElementById("graphdiv"), "temperatures.csv", // path to CSV file - null, // labels in top line of CSV file - {} + {} // additional options ); </script> </body> @@ -163,9 +158,9 @@
HTML
@@ -173,14 +168,15 @@

Click here to view the temperatures.csv file. There are a few things to note here:

-

These last two problems can be fixed by specifying the appropriate options in the fourth parameter to the DateGraph constructor. To set the number of days for a moving average, use the rollPeriod option. To set the range of the y-axis, use the valueRange option. Here's how it's done:

+

This problem can be fixed by specifying the appropriate options in the "additional options" parameter to the Dygraph constructor. To set the number of days for a moving average, use the rollPeriod option. Here's how it's done:

@@ -195,12 +191,11 @@ <body> <div id="graphdiv" style="width:600px; height:300px;"></div> <script type="text/javascript"> - g = new DateGraph( + g = new Dygraph( document.getElementById("graphdiv"), - "temperatures.csv", null, + "temperatures.csv", { rollPeriod: 7, showRoller: true, - valueRange: [25, 100] } ); </script> @@ -210,12 +205,11 @@
HTML
@@ -224,7 +218,7 @@

A rolling average can be set using the text box in the lower left-hand corner of the graph (the showRoller attribute is what makes this appear).

Error Bars

-

Another significant feature of the dygraphs library is the ability to display error bars around data series. One standard deviation must be specified for each data point. A +/-n sigma band will be drawn around the data series at that point. If a moving average is being displayed, DateGraph will compute the standard deviation of the average at each point. (i.e. σ = sqrt((σ_1^2 + σ_2^2 + ... + σ_n^2)/n))

+

Another significant feature of the dygraphs library is the ability to display error bars around data series. One standard deviation must be specified for each data point. A +/-n sigma band will be drawn around the data series at that point. If a moving average is being displayed, dygraphs will compute the standard deviation of the average at each point. (i.e. σ = sqrt((σ_1^2 + σ_2^2 + ... + σ_n^2)/n))

Here's a demonstration. There are two data series. One is N(100,10) with a standard deviation of 10 specified at each point. The other is N(80,20) with a standard deviation of 20 specified at each point. The CSV file was generated using Octave and can be viewed here.

@@ -245,10 +239,9 @@ ></div> <script type="text/javascript"> $ = document.getElementById; -g = new DateGraph( +g = new Dygraph( $("graphdiv"), "twonormals.csv", - null, { rollPeriod: 7, showRoller: true, errorBars: true, @@ -263,10 +256,9 @@ g = new DateGraph(