--- /dev/null
+<!DOCTYPE html>
+<html>
+ <head>
+ <meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7; IE=EmulateIE9">
+ <title>Charting combinations</title>
+ <!--[if IE]>
+ <script type="text/javascript" src="../excanvas.js"></script>
+ <![endif]-->
+ <script type="text/javascript" src="../dygraph-dev.js"></script>
+ <script type="text/javascript" src="data.js"></script>
+ <style type="text/css">
+ .chart {
+ width: 600px;
+ height: 300px;
+ }
+ #container {
+ display: table;
+ float: left;
+ }
+ #results {
+ display: table;
+ float: left;
+ padding-left: 20px;
+ }
+ </style>
+ </head>
+ <body>
+ <p>There are four options which fundmanentally change the behavior of the standard plotter:</p>
+ <ol>
+ <li> errorBars / customBars
+ <li> stepPlot
+ <li> fillGraph
+ <li> strokePattern
+ </ol>
+
+ <p>This page exhaustively checks all combinations of these parameters.</p>
+
+ <div id=container> </div>
+ <div id=results> <b>Valid combinations</b>
+ <ol id='results-ol'>
+ </ol>
+ </div>
+
+ <script type="text/javascript">
+ // NOTE: this is an odd thing to do; dygraphs should really throw here.
+ console.warn = function(x) {
+ throw x;
+ }
+
+ var bools = [false, true];
+ var containerDiv = document.getElementById("container");
+ var resultsList = document.getElementById("results-ol");
+ bools.forEach(function(errorBars) {
+ var data_csv = errorBars ? NoisyData() : data();
+ bools.forEach(function(stepPlot) {
+ bools.forEach(function(fillGraph) {
+ bools.forEach(function(strokePattern) {
+ var title_parts = [];
+ if (errorBars) title_parts.push('errorBars');
+ if (stepPlot) title_parts.push('stepPlot');
+ if (fillGraph) title_parts.push('fillGraph');
+ if (strokePattern) title_parts.push('strokePattern');
+ var title = title_parts.join(', ');
+ if (!title) title = '(none)';
+
+ var title_h2 = document.createElement('h2');
+ title_h2.innerHTML = title;
+ containerDiv.appendChild(title_h2);
+
+ var div = document.createElement('div');
+ div.className = 'chart';
+ containerDiv.appendChild(div);
+
+ try {
+ var g = new Dygraph(div, data_csv, {
+ errorBars: errorBars,
+ stepPlot: stepPlot,
+ fillGraph: fillGraph,
+ strokePattern: strokePattern ? Dygraph.DASHED_LINE : null
+ });
+
+ resultsList.innerHTML += '<li> ' + title + '</li>';
+ } catch(e) {
+ div.className = '';
+ div.innerHTML = e;
+ }
+ });
+ });
+ });
+ });
+ </script>
+
+ </body>
+</html>