nvd3-rails 0.0.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (167) hide show
  1. data/.gitmodules +3 -0
  2. data/README.md +101 -0
  3. data/lib/nvd3-rails.rb +1 -0
  4. data/lib/nvd3/rails.rb +8 -0
  5. data/lib/nvd3/rails/engine.rb +6 -0
  6. data/lib/nvd3/rails/version.rb +5 -0
  7. data/nvd3-rails.gemspec +21 -0
  8. data/vendor/assets/javascripts/nvd3-rails.js +7 -0
  9. data/vendor/assets/javascripts/nvd3/.git.sample/HEAD +1 -0
  10. data/vendor/assets/javascripts/nvd3/.git.sample/config +13 -0
  11. data/vendor/assets/javascripts/nvd3/.git.sample/description +1 -0
  12. data/vendor/assets/javascripts/nvd3/.git.sample/hooks/applypatch-msg.sample +15 -0
  13. data/vendor/assets/javascripts/nvd3/.git.sample/hooks/commit-msg.sample +24 -0
  14. data/vendor/assets/javascripts/nvd3/.git.sample/hooks/post-update.sample +8 -0
  15. data/vendor/assets/javascripts/nvd3/.git.sample/hooks/pre-applypatch.sample +14 -0
  16. data/vendor/assets/javascripts/nvd3/.git.sample/hooks/pre-commit.sample +50 -0
  17. data/vendor/assets/javascripts/nvd3/.git.sample/hooks/pre-push.sample +53 -0
  18. data/vendor/assets/javascripts/nvd3/.git.sample/hooks/pre-rebase.sample +169 -0
  19. data/vendor/assets/javascripts/nvd3/.git.sample/hooks/prepare-commit-msg.sample +36 -0
  20. data/vendor/assets/javascripts/nvd3/.git.sample/hooks/update.sample +128 -0
  21. data/vendor/assets/javascripts/nvd3/.git.sample/index +0 -0
  22. data/vendor/assets/javascripts/nvd3/.git.sample/info/exclude +6 -0
  23. data/vendor/assets/javascripts/nvd3/.git.sample/logs/HEAD +1 -0
  24. data/vendor/assets/javascripts/nvd3/.git.sample/logs/refs/heads/master +1 -0
  25. data/vendor/assets/javascripts/nvd3/.git.sample/logs/refs/remotes/origin/HEAD +1 -0
  26. data/vendor/assets/javascripts/nvd3/.git.sample/objects/pack/pack-babbb312d58dd7f03870b530a1b9a84c80918be3.idx +0 -0
  27. data/vendor/assets/javascripts/nvd3/.git.sample/objects/pack/pack-babbb312d58dd7f03870b530a1b9a84c80918be3.pack +0 -0
  28. data/vendor/assets/javascripts/nvd3/.git.sample/packed-refs +5 -0
  29. data/vendor/assets/javascripts/nvd3/.git.sample/refs/heads/master +1 -0
  30. data/vendor/assets/javascripts/nvd3/.git.sample/refs/remotes/origin/HEAD +1 -0
  31. data/vendor/assets/javascripts/nvd3/.gitignore +24 -0
  32. data/vendor/assets/javascripts/nvd3/LICENSE.md +49 -0
  33. data/vendor/assets/javascripts/nvd3/Makefile +56 -0
  34. data/vendor/assets/javascripts/nvd3/README.md +43 -0
  35. data/vendor/assets/javascripts/nvd3/build.bat +6 -0
  36. data/vendor/assets/javascripts/nvd3/deprecated/bar.html +198 -0
  37. data/vendor/assets/javascripts/nvd3/deprecated/bar.js +250 -0
  38. data/vendor/assets/javascripts/nvd3/deprecated/charts/cumulativeLineChart.js +174 -0
  39. data/vendor/assets/javascripts/nvd3/deprecated/charts/discreteBarChart.js +157 -0
  40. data/vendor/assets/javascripts/nvd3/deprecated/charts/lineChart.js +159 -0
  41. data/vendor/assets/javascripts/nvd3/deprecated/charts/lineChartDaily.js +168 -0
  42. data/vendor/assets/javascripts/nvd3/deprecated/charts/stackedAreaChart.js +177 -0
  43. data/vendor/assets/javascripts/nvd3/deprecated/cumulativeLine.html +171 -0
  44. data/vendor/assets/javascripts/nvd3/deprecated/cumulativeLine.js +334 -0
  45. data/vendor/assets/javascripts/nvd3/deprecated/discreteBarChartWithEnabledTooltip.html +129 -0
  46. data/vendor/assets/javascripts/nvd3/deprecated/discreteBarChartWithEnabledTooltip.js +222 -0
  47. data/vendor/assets/javascripts/nvd3/deprecated/discreteBarWithAxes.html +172 -0
  48. data/vendor/assets/javascripts/nvd3/deprecated/discreteBarWithAxes.js +152 -0
  49. data/vendor/assets/javascripts/nvd3/deprecated/lineChart-old.html +83 -0
  50. data/vendor/assets/javascripts/nvd3/deprecated/lineChartDaily.html +109 -0
  51. data/vendor/assets/javascripts/nvd3/deprecated/linePlusBar.html +173 -0
  52. data/vendor/assets/javascripts/nvd3/deprecated/linePlusBar.js +250 -0
  53. data/vendor/assets/javascripts/nvd3/deprecated/lineWithFocus.html +137 -0
  54. data/vendor/assets/javascripts/nvd3/deprecated/lineWithFocus.js +354 -0
  55. data/vendor/assets/javascripts/nvd3/deprecated/lineWithFourAxes.html +144 -0
  56. data/vendor/assets/javascripts/nvd3/deprecated/lineWithFourAxes.js +218 -0
  57. data/vendor/assets/javascripts/nvd3/deprecated/lineWithLegend.html +142 -0
  58. data/vendor/assets/javascripts/nvd3/deprecated/lineWithLegend.js +176 -0
  59. data/vendor/assets/javascripts/nvd3/deprecated/monthendAxis.html +99 -0
  60. data/vendor/assets/javascripts/nvd3/deprecated/multiBarHorizontalWithLegend.html +258 -0
  61. data/vendor/assets/javascripts/nvd3/deprecated/multiBarHorizontalWithLegend.js +226 -0
  62. data/vendor/assets/javascripts/nvd3/deprecated/multiBarWithLegend.html +162 -0
  63. data/vendor/assets/javascripts/nvd3/deprecated/multiBarWithLegend.js +249 -0
  64. data/vendor/assets/javascripts/nvd3/deprecated/pie.js +263 -0
  65. data/vendor/assets/javascripts/nvd3/deprecated/scatterChart.html +110 -0
  66. data/vendor/assets/javascripts/nvd3/deprecated/scatterChart.js +294 -0
  67. data/vendor/assets/javascripts/nvd3/deprecated/scatterFisheyeChart.js +418 -0
  68. data/vendor/assets/javascripts/nvd3/deprecated/scatterWithLegend.html +167 -0
  69. data/vendor/assets/javascripts/nvd3/deprecated/scatterWithLegend.js +261 -0
  70. data/vendor/assets/javascripts/nvd3/deprecated/stackedArea.js +286 -0
  71. data/vendor/assets/javascripts/nvd3/deprecated/stackedAreaChart.html +183 -0
  72. data/vendor/assets/javascripts/nvd3/deprecated/stackedAreaChart_old.html +137 -0
  73. data/vendor/assets/javascripts/nvd3/deprecated/stackedAreaWithLegend.html +222 -0
  74. data/vendor/assets/javascripts/nvd3/deprecated/stackedAreaWithLegend.js +297 -0
  75. data/vendor/assets/javascripts/nvd3/examples/bullet.html +96 -0
  76. data/vendor/assets/javascripts/nvd3/examples/bulletChart.html +94 -0
  77. data/vendor/assets/javascripts/nvd3/examples/crossfilter.html +167 -0
  78. data/vendor/assets/javascripts/nvd3/examples/crossfilterWithDimentions.html +180 -0
  79. data/vendor/assets/javascripts/nvd3/examples/crossfilterWithTables.html +288 -0
  80. data/vendor/assets/javascripts/nvd3/examples/cumulativeLineChart.html +155 -0
  81. data/vendor/assets/javascripts/nvd3/examples/discreteBarChart.html +116 -0
  82. data/vendor/assets/javascripts/nvd3/examples/dynamicTimeSeries.html +148 -0
  83. data/vendor/assets/javascripts/nvd3/examples/historicalBar.html +157 -0
  84. data/vendor/assets/javascripts/nvd3/examples/horizon.html +163 -0
  85. data/vendor/assets/javascripts/nvd3/examples/images/grey-minus.png +0 -0
  86. data/vendor/assets/javascripts/nvd3/examples/images/grey-plus.png +0 -0
  87. data/vendor/assets/javascripts/nvd3/examples/indentedtree.html +126 -0
  88. data/vendor/assets/javascripts/nvd3/examples/legend.html +75 -0
  89. data/vendor/assets/javascripts/nvd3/examples/line.html +95 -0
  90. data/vendor/assets/javascripts/nvd3/examples/lineChart.html +112 -0
  91. data/vendor/assets/javascripts/nvd3/examples/lineChartSVGResize.html +151 -0
  92. data/vendor/assets/javascripts/nvd3/examples/linePlusBarChart.html +114 -0
  93. data/vendor/assets/javascripts/nvd3/examples/linePlusBarWithFocusChart.html +128 -0
  94. data/vendor/assets/javascripts/nvd3/examples/lineTimeSeries.html +142 -0
  95. data/vendor/assets/javascripts/nvd3/examples/lineWithFisheyeChart.html +101 -0
  96. data/vendor/assets/javascripts/nvd3/examples/lineWithFocusChart.html +87 -0
  97. data/vendor/assets/javascripts/nvd3/examples/multiBar.html +92 -0
  98. data/vendor/assets/javascripts/nvd3/examples/multiBarChart.html +93 -0
  99. data/vendor/assets/javascripts/nvd3/examples/multiBarHorizontalChart.html +388 -0
  100. data/vendor/assets/javascripts/nvd3/examples/multiChart.html +93 -0
  101. data/vendor/assets/javascripts/nvd3/examples/nations.json +1 -0
  102. data/vendor/assets/javascripts/nvd3/examples/pie.html +93 -0
  103. data/vendor/assets/javascripts/nvd3/examples/pieChart.html +114 -0
  104. data/vendor/assets/javascripts/nvd3/examples/scatter.html +95 -0
  105. data/vendor/assets/javascripts/nvd3/examples/scatterChart.html +115 -0
  106. data/vendor/assets/javascripts/nvd3/examples/scatterPlusLineChart.html +116 -0
  107. data/vendor/assets/javascripts/nvd3/examples/sparkline.html +62 -0
  108. data/vendor/assets/javascripts/nvd3/examples/sparklinePlus.html +67 -0
  109. data/vendor/assets/javascripts/nvd3/examples/stackedArea.html +155 -0
  110. data/vendor/assets/javascripts/nvd3/examples/stackedAreaChart.html +245 -0
  111. data/vendor/assets/javascripts/nvd3/examples/stream_layers.js +35 -0
  112. data/vendor/assets/javascripts/nvd3/lib/cie.js +155 -0
  113. data/vendor/assets/javascripts/nvd3/lib/crossfilter.js +1180 -0
  114. data/vendor/assets/javascripts/nvd3/lib/crossfilter.min.js +1 -0
  115. data/vendor/assets/javascripts/nvd3/lib/d3.v2.js +7033 -0
  116. data/vendor/assets/javascripts/nvd3/lib/d3.v2.min.js +4 -0
  117. data/vendor/assets/javascripts/nvd3/lib/fisheye.js +86 -0
  118. data/vendor/assets/javascripts/nvd3/lib/hive.js +80 -0
  119. data/vendor/assets/javascripts/nvd3/lib/horizon.js +192 -0
  120. data/vendor/assets/javascripts/nvd3/lib/sankey.js +292 -0
  121. data/vendor/assets/javascripts/nvd3/nv.d3.js +11762 -0
  122. data/vendor/assets/javascripts/nvd3/src/core.js +117 -0
  123. data/vendor/assets/javascripts/nvd3/src/models/axis.js +398 -0
  124. data/vendor/assets/javascripts/nvd3/src/models/backup/bullet.js +250 -0
  125. data/vendor/assets/javascripts/nvd3/src/models/backup/bulletChart.js +349 -0
  126. data/vendor/assets/javascripts/nvd3/src/models/bullet.js +377 -0
  127. data/vendor/assets/javascripts/nvd3/src/models/bulletChart.js +341 -0
  128. data/vendor/assets/javascripts/nvd3/src/models/cumulativeLineChart.js +609 -0
  129. data/vendor/assets/javascripts/nvd3/src/models/discreteBar.js +327 -0
  130. data/vendor/assets/javascripts/nvd3/src/models/discreteBarChart.js +290 -0
  131. data/vendor/assets/javascripts/nvd3/src/models/distribution.js +146 -0
  132. data/vendor/assets/javascripts/nvd3/src/models/historicalBar.js +289 -0
  133. data/vendor/assets/javascripts/nvd3/src/models/indentedTree.js +306 -0
  134. data/vendor/assets/javascripts/nvd3/src/models/legend.js +203 -0
  135. data/vendor/assets/javascripts/nvd3/src/models/line.js +286 -0
  136. data/vendor/assets/javascripts/nvd3/src/models/lineChart.js +359 -0
  137. data/vendor/assets/javascripts/nvd3/src/models/lineDynTimeSeriesChart.js +434 -0
  138. data/vendor/assets/javascripts/nvd3/src/models/linePlusBarChart.js +422 -0
  139. data/vendor/assets/javascripts/nvd3/src/models/linePlusBarWithFocusChart.js +657 -0
  140. data/vendor/assets/javascripts/nvd3/src/models/lineTimeSeriesChart.js +340 -0
  141. data/vendor/assets/javascripts/nvd3/src/models/lineWithFisheye.js +197 -0
  142. data/vendor/assets/javascripts/nvd3/src/models/lineWithFisheyeChart.js +324 -0
  143. data/vendor/assets/javascripts/nvd3/src/models/lineWithFocusChart.js +565 -0
  144. data/vendor/assets/javascripts/nvd3/src/models/multiAxisLineChart.js +312 -0
  145. data/vendor/assets/javascripts/nvd3/src/models/multiBar.js +416 -0
  146. data/vendor/assets/javascripts/nvd3/src/models/multiBarChart.js +445 -0
  147. data/vendor/assets/javascripts/nvd3/src/models/multiBarHorizontal.js +420 -0
  148. data/vendor/assets/javascripts/nvd3/src/models/multiBarHorizontalChart.js +415 -0
  149. data/vendor/assets/javascripts/nvd3/src/models/multiBarTimeSeries.js +371 -0
  150. data/vendor/assets/javascripts/nvd3/src/models/multiBarTimeSeriesChart.js +403 -0
  151. data/vendor/assets/javascripts/nvd3/src/models/multiChart.js +444 -0
  152. data/vendor/assets/javascripts/nvd3/src/models/ohlcBar.js +365 -0
  153. data/vendor/assets/javascripts/nvd3/src/models/pie.js +358 -0
  154. data/vendor/assets/javascripts/nvd3/src/models/pieChart.js +281 -0
  155. data/vendor/assets/javascripts/nvd3/src/models/scatter.js +622 -0
  156. data/vendor/assets/javascripts/nvd3/src/models/scatterChart.js +576 -0
  157. data/vendor/assets/javascripts/nvd3/src/models/scatterPlusLineChart.js +577 -0
  158. data/vendor/assets/javascripts/nvd3/src/models/sparkline.js +179 -0
  159. data/vendor/assets/javascripts/nvd3/src/models/sparklinePlus.js +291 -0
  160. data/vendor/assets/javascripts/nvd3/src/models/stackedArea.js +336 -0
  161. data/vendor/assets/javascripts/nvd3/src/models/stackedAreaChart.js +453 -0
  162. data/vendor/assets/javascripts/nvd3/src/nv.d3.css +671 -0
  163. data/vendor/assets/javascripts/nvd3/src/tooltip.js +129 -0
  164. data/vendor/assets/javascripts/nvd3/src/utils.js +105 -0
  165. data/vendor/assets/javascripts/set-nvd3-env.js.erb +5 -0
  166. data/vendor/assets/stylesheets/nvd3-rails.css +3 -0
  167. metadata +233 -0
@@ -0,0 +1,142 @@
1
+ <!DOCTYPE html>
2
+ <meta charset="utf-8">
3
+
4
+ <link href="../src/nv.d3.css" rel="stylesheet" type="text/css">
5
+
6
+ <style>
7
+
8
+ body {
9
+ overflow-y:scroll;
10
+ }
11
+
12
+ text {
13
+ font: 12px sans-serif;
14
+ }
15
+
16
+ svg {
17
+ display: block;
18
+ border: grey dotted 1px;
19
+ }
20
+
21
+ #chart1 svg {
22
+ height: 500px;
23
+ min-width: 100px;
24
+ min-height: 100px;
25
+ /*
26
+ margin: 50px;
27
+ Minimum height and width is a good idea to prevent negative SVG dimensions...
28
+ For example width should be =< margin.left + margin.right + 1,
29
+ of course 1 pixel for the entire chart would not be very useful, BUT should not have errors
30
+ */
31
+ }
32
+
33
+ .nvd3 .nv-groups .nv-point {
34
+ transition: stroke-width 100ms linear, stroke-opacity 100ms linear;
35
+ -moz-transition: stroke-width 100ms linear, stroke-opacity 100ms linear;
36
+ -webkit-transition: stroke-width 100ms linear, stroke-opacity 100ms linear;
37
+ }
38
+
39
+ .nvtooltip {
40
+ transition: opacity 100ms linear;
41
+ -moz-transition: opacity 100ms linear;
42
+ -webkit-transition: opacity 100ms linear;
43
+
44
+ transition-delay: 100ms;
45
+ -moz-transition-delay: 100ms;
46
+ -webkit-transition-delay: 100ms;
47
+
48
+ padding: 2px;
49
+ -moz-box-shadow: 2px 2px 4px rgba(0,0,0,.5);
50
+ -webkit-box-shadow: 2px 2px 4px rgba(0,0,0,.5);
51
+ box-shadow: 2px 2px 4px rgba(0,0,0,.5);
52
+ -moz-border-radius: 2px;
53
+ border-radius: 2px;
54
+ }
55
+ .nvtooltip h3 {
56
+ font-size: 10pt;
57
+ }
58
+ .nvtooltip p {
59
+ font-size: 10pt;
60
+ }
61
+
62
+ </style>
63
+ <body>
64
+
65
+ <div id="chart1">
66
+ <svg style="height: 240px; width:500px;"></svg>
67
+ </div>
68
+
69
+ <script src="../lib/d3.v2.js"></script>
70
+ <script src="../nv.d3.js"></script>
71
+ <script src="../src/tooltip.js"></script>
72
+ <script src="../src/utils.js"></script>
73
+ <script src="../src/models/legend.js"></script>
74
+ <script src="../src/models/axis.js"></script>
75
+ <script src="../src/models/scatter.js"></script>
76
+ <script src="../src/models/line.js"></script>
77
+ <script src="../src/models/lineTimeSeriesChart.js"></script>
78
+ <script>
79
+
80
+
81
+
82
+
83
+ // Wrapping in nv.addGraph allows for '0 timeout render', stors rendered charts in nv.graphs, and may do more in the future... it's NOT required
84
+ nv.addGraph(function() {
85
+ var chart = nv.models.lineTimeSeriesChart();
86
+
87
+ // chart
88
+ // .x(function(d,i) { return i })
89
+
90
+
91
+ // chart.xAxis // chart sub-models (ie. xAxis, yAxis, etc) when accessed directly, return themselves, not the partent chart, so need to chain separately
92
+ // .tickFormat(d3.format(',.1f'));
93
+
94
+ chart.yAxis
95
+ .axisLabel('Voltage (v)')
96
+ .tickFormat(d3.format(',.2f'));
97
+
98
+ d3.select('#chart1 svg')
99
+ //.datum([]) //for testing noData
100
+ .datum(sinAndCos())
101
+ .transition().duration(500)
102
+ .call(chart);
103
+
104
+ //TODO: Figure out a good way to do this automatically
105
+ nv.utils.windowResize(chart.update);
106
+ //nv.utils.windowResize(function() { d3.select('#chart1 svg').call(chart) });
107
+
108
+ return chart;
109
+ });
110
+
111
+ (new Date).getTime()
112
+
113
+ function sinAndCos() {
114
+ var sin = [],
115
+ cos = [];
116
+
117
+ var now = Math.round((new Date).getTime()),
118
+ dur = 24 * 3600 * 1000,
119
+ step = dur / 100;
120
+
121
+ for (var i = now - dur, j = 1; i < now; i += step, j += 1) {
122
+ sin.push({x: i, y: j%10==0 ? null : Math.sin(i/(10*step)) }); //the nulls are to show how defined works
123
+ cos.push({x: i, y: .5 * Math.cos(i/(10*step))});
124
+ }
125
+
126
+ return [
127
+ {
128
+ area: true,
129
+ values: sin,
130
+ key: "Sine Wave",
131
+ color: "#ff7f0e"
132
+ },
133
+ {
134
+ values: cos,
135
+ key: "Cosine Wave",
136
+ color: "#2ca02c"
137
+ }
138
+ ];
139
+ }
140
+
141
+
142
+ </script>
@@ -0,0 +1,101 @@
1
+ <!DOCTYPE html>
2
+ <meta charset="utf-8">
3
+
4
+ <link href="../src/nv.d3.css" rel="stylesheet" type="text/css">
5
+
6
+ <style>
7
+
8
+ body {
9
+ overflow-y:scroll;
10
+ }
11
+
12
+ text {
13
+ font: 12px sans-serif;
14
+ }
15
+
16
+ svg {
17
+ display: block;
18
+ }
19
+
20
+ #chart1 svg {
21
+ height: 500px;
22
+ min-width: 100px;
23
+ min-height: 100px;
24
+ /*
25
+ margin: 50px;
26
+ Minimum height and width is a good idea to prevent negative SVG dimensions...
27
+ For example width should be =< margin.left + margin.right + 1,
28
+ of course 1 pixel for the entire chart would not be very useful, BUT should not have errors
29
+ */
30
+ }
31
+
32
+ </style>
33
+ <body>
34
+
35
+ <div id="chart1">
36
+ <svg style="height: 500px;"></svg>
37
+ </div>
38
+
39
+ <script src="../lib/d3.v2.js"></script>
40
+ <script src="../lib/fisheye.js"></script>
41
+ <script src="../nv.d3.js"></script>
42
+ <script src="../src/tooltip.js"></script>
43
+ <script src="../src/utils.js"></script>
44
+ <script src="../src/models/legend.js"></script>
45
+ <script src="../src/models/axis.js"></script>
46
+ <script src="../src/models/scatter.js"></script>
47
+ <script src="../src/models/lineWithFisheye.js"></script>
48
+ <script src="../src/models/lineWithFisheyeChart.js"></script>
49
+ <script>
50
+
51
+
52
+ // Wrapping in nv.addGraph allows for '0 timeout render', stors rendered charts in nv.graphs, and may do more in the future... it's NOT required
53
+ nv.addGraph(function() {
54
+ var chart = nv.models.lineChart();
55
+
56
+ chart.xAxis // chart sub-models (ie. xAxis, yAxis, etc) when accessed directly, return themselves, not the parent chart, so need to chain separately
57
+ .tickFormat(d3.format(',r'));
58
+
59
+ chart.yAxis
60
+ .axisLabel('Voltage (v)')
61
+ .tickFormat(d3.format(',.2f'));
62
+
63
+ d3.select('#chart1 svg')
64
+ .datum(sinAndCos())
65
+ .transition().duration(500)
66
+ .call(chart);
67
+
68
+ //TODO: Figure out a good way to do this automatically
69
+ nv.utils.windowResize(chart.update);
70
+ //nv.utils.windowResize(function() { d3.select('#chart1 svg').call(chart) });
71
+
72
+ return chart;
73
+ });
74
+
75
+
76
+
77
+ function sinAndCos() {
78
+ var sin = [],
79
+ cos = [];
80
+
81
+ for (var i = 0; i < 200; i++) {
82
+ sin.push({x: i, y: Math.sin(i/2)});
83
+ cos.push({x: i, y: .5 * Math.cos(i)});
84
+ }
85
+
86
+ return [
87
+ {
88
+ values: sin,
89
+ key: "Sine Wave",
90
+ color: "#ff7f0e"
91
+ },
92
+ {
93
+ values: cos,
94
+ key: "Cosine Wave",
95
+ color: "#2ca02c"
96
+ }
97
+ ];
98
+ }
99
+
100
+
101
+ </script>
@@ -0,0 +1,87 @@
1
+ <!DOCTYPE html>
2
+ <meta charset="utf-8">
3
+
4
+ <link href="../src/nv.d3.css" rel="stylesheet" type="text/css">
5
+
6
+ <style>
7
+
8
+ body {
9
+ overflow-y:scroll;
10
+ }
11
+
12
+ text {
13
+ font: 12px sans-serif;
14
+ }
15
+
16
+ svg {
17
+ display: block;
18
+ }
19
+
20
+ #chart1 svg {
21
+ height: 500px;
22
+ min-width: 100px;
23
+ min-height: 100px;
24
+ /*
25
+ margin: 50px;
26
+ Minimum height and width is a good idea to prevent negative SVG dimensions...
27
+ For example width should be =< margin.left + margin.right + 1,
28
+ of course 1 pixel for the entire chart would not be very useful, BUT should not have errors
29
+ */
30
+ }
31
+
32
+ </style>
33
+ <body>
34
+
35
+ <div id="chart">
36
+ <svg style="height: 500px;"></svg>
37
+ </div>
38
+
39
+ <script src="../lib/d3.v2.js"></script>
40
+ <script src="../nv.d3.js"></script>
41
+ <script src="../src/tooltip.js"></script>
42
+ <script src="../src/utils.js"></script>
43
+ <script src="../src/models/legend.js"></script>
44
+ <script src="../src/models/axis.js"></script>
45
+ <script src="../src/models/scatter.js"></script>
46
+ <script src="../src/models/line.js"></script>
47
+ <script src="../src/models/lineWithFocusChart.js"></script>
48
+ <script src="stream_layers.js"></script>
49
+ <script>
50
+
51
+
52
+ nv.addGraph(function() {
53
+ var chart = nv.models.lineWithFocusChart();
54
+
55
+ chart.xAxis
56
+ .tickFormat(d3.format(',f'));
57
+ chart.x2Axis
58
+ .tickFormat(d3.format(',f'));
59
+
60
+ chart.yAxis
61
+ .tickFormat(d3.format(',.2f'));
62
+ chart.y2Axis
63
+ .tickFormat(d3.format(',.2f'));
64
+
65
+ d3.select('#chart svg')
66
+ .datum(testData())
67
+ .transition().duration(500)
68
+ .call(chart);
69
+
70
+ nv.utils.windowResize(chart.update);
71
+
72
+ return chart;
73
+ });
74
+
75
+
76
+
77
+ function testData() {
78
+ return stream_layers(3,128,.1).map(function(data, i) {
79
+ return {
80
+ key: 'Stream' + i,
81
+ values: data
82
+ };
83
+ });
84
+ }
85
+
86
+
87
+ </script>
@@ -0,0 +1,92 @@
1
+ <!DOCTYPE html>
2
+ <meta charset="utf-8">
3
+
4
+ <link href="../src/nv.d3.css" rel="stylesheet" type="text/css">
5
+
6
+ <style>
7
+
8
+
9
+ body {
10
+ overflow-y:scroll;
11
+ }
12
+
13
+ text {
14
+ font: 12px sans-serif;
15
+ }
16
+
17
+ </style>
18
+ <body>
19
+
20
+ <div id="test1">
21
+ <svg></svg>
22
+ </div>
23
+
24
+ <script src="../lib/d3.v2.js"></script>
25
+ <script src="../nv.d3.js"></script>
26
+ <script src="../src/tooltip.js"></script>
27
+ <script src="../src/models/legend.js"></script>
28
+ <script src="../src/models/axis.js"></script>
29
+ <script src="../src/models/multiBar.js"></script>
30
+ <script src="stream_layers.js"></script>
31
+ <script>
32
+
33
+ //var test_data = stream_layers(3,128,.1).map(function(data, i) {
34
+ var test_data = stream_layers(3,128,.1).map(function(data, i) {
35
+ return {
36
+ key: 'Stream' + i,
37
+ values: data
38
+ };
39
+ });
40
+
41
+ nv.addGraph({
42
+ generate: function() {
43
+ var width = nv.utils.windowSize().width - 40,
44
+ height = nv.utils.windowSize().height - 40;
45
+
46
+ var chart = nv.models.multiBar()
47
+ .width(width)
48
+ .height(height)
49
+ .stacked(true)
50
+
51
+
52
+ var svg = d3.select('#test1 svg')
53
+ .attr('width', width)
54
+ .attr('height', height)
55
+ .datum(test_data);
56
+
57
+ svg.transition().duration(500).call(chart);
58
+
59
+ return chart;
60
+ },
61
+ callback: function(graph) {
62
+
63
+
64
+ window.onresize = function() {
65
+ var width = nv.utils.windowSize().width - 40,
66
+ height = nv.utils.windowSize().height - 40,
67
+ margin = graph.margin();
68
+
69
+
70
+ if (width < margin.left + margin.right + 20)
71
+ width = margin.left + margin.right + 20;
72
+
73
+ if (height < margin.top + margin.bottom + 20)
74
+ height = margin.top + margin.bottom + 20;
75
+
76
+
77
+ graph
78
+ .width(width)
79
+ .height(height);
80
+
81
+ d3.select('#test1 svg')
82
+ .attr('width', width)
83
+ .attr('height', height)
84
+ .call(graph);
85
+
86
+ };
87
+ }
88
+ });
89
+
90
+
91
+
92
+ </script>
@@ -0,0 +1,93 @@
1
+ <!DOCTYPE html>
2
+ <meta charset="utf-8">
3
+
4
+ <link href="../src/nv.d3.css" rel="stylesheet" type="text/css">
5
+
6
+ <style>
7
+
8
+ body {
9
+ overflow-y:scroll;
10
+ }
11
+
12
+ text {
13
+ font: 12px sans-serif;
14
+ }
15
+
16
+ #chart1 {
17
+ height: 500px;
18
+ margin: 10px;
19
+ min-width: 100px;
20
+ min-height: 100px;
21
+ /*
22
+ Minimum height and width is a good idea to prevent negative SVG dimensions...
23
+ For example width should be =< margin.left + margin.right + 1,
24
+ of course 1 pixel for the entire chart would not be very useful, BUT should not have errors
25
+ */
26
+ }
27
+
28
+ </style>
29
+ <body>
30
+
31
+ <div id="chart1">
32
+ <svg></svg>
33
+ </div>
34
+
35
+ <script src="../lib/d3.v2.js"></script>
36
+ <script src="../nv.d3.js"></script>
37
+ <script src="../src/tooltip.js"></script>
38
+ <script src="../src/utils.js"></script>
39
+ <script src="../src/models/legend.js"></script>
40
+ <script src="../src/models/axis.js"></script>
41
+ <script src="../src/models/multiBar.js"></script>
42
+ <script src="../src/models/multiBarChart.js"></script>
43
+ <script src="stream_layers.js"></script>
44
+ <script>
45
+
46
+ var test_data = stream_layers(3,10+Math.random()*100,.1).map(function(data, i) {
47
+ //var test_data = stream_layers(3,1,.1).map(function(data, i) { //for testing single data point
48
+ return {
49
+ key: 'Stream' + i,
50
+ values: data
51
+ };
52
+ });
53
+
54
+ console.log('td',test_data);
55
+
56
+ var negative_test_data = new d3.range(0,3).map(function(d,i) { return {
57
+ key: 'Stream' + i,
58
+ values: new d3.range(0,10).map( function(f,j) {
59
+ return {
60
+ y: 10 + Math.random()*100 * (Math.floor(Math.random()*100)%2 ? 1 : -1),
61
+ x: j
62
+ }
63
+ })
64
+ };
65
+ });
66
+
67
+ var chart;
68
+ nv.addGraph(function() {
69
+ chart = nv.models.multiBarChart()
70
+ .barColor(d3.scale.category20().range());
71
+
72
+ chart.xAxis
73
+ .showMaxMin(true)
74
+ .tickFormat(d3.format(',f'));
75
+
76
+ chart.yAxis
77
+ .tickFormat(d3.format(',.1f'));
78
+
79
+ d3.select('#chart1 svg')
80
+ .datum(negative_test_data)
81
+ .transition().duration(500).call(chart);
82
+
83
+ nv.utils.windowResize(chart.update);
84
+
85
+ chart.dispatch.on('stateChange', function(e) { nv.log('New State:', JSON.stringify(e)); });
86
+
87
+ return chart;
88
+ });
89
+
90
+
91
+
92
+
93
+ </script>