jqplot-rails 0.1 → 0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (38) hide show
  1. data/lib/jqplot-rails.rb +6 -4
  2. data/lib/jqplot-rails/railtie.rb +9 -0
  3. data/lib/jqplot-rails/view_helpers.rb +11 -0
  4. data/vendor/assets/javascripts/jqplot/excanvas.js +1438 -0
  5. data/vendor/assets/javascripts/jqplot/index.js +66 -0
  6. data/vendor/assets/javascripts/{jqplot.1.0.0b2_r792.js → jqplot/jquery.jqplot.js} +3458 -793
  7. data/vendor/assets/javascripts/jqplot/plugins/BezierCurveRenderer.js +313 -0
  8. data/vendor/assets/javascripts/jqplot/plugins/barRenderer.js +797 -0
  9. data/vendor/assets/javascripts/jqplot/plugins/blockRenderer.js +235 -0
  10. data/vendor/assets/javascripts/jqplot/plugins/bubbleRenderer.js +759 -0
  11. data/vendor/assets/javascripts/jqplot/plugins/canvasAxisLabelRenderer.js +203 -0
  12. data/vendor/assets/javascripts/jqplot/plugins/canvasAxisTickRenderer.js +243 -0
  13. data/vendor/assets/javascripts/jqplot/plugins/canvasOverlay.js +865 -0
  14. data/vendor/assets/javascripts/jqplot/plugins/canvasTextRenderer.js +449 -0
  15. data/vendor/assets/javascripts/jqplot/plugins/categoryAxisRenderer.js +673 -0
  16. data/vendor/assets/javascripts/jqplot/plugins/ciParser.js +116 -0
  17. data/vendor/assets/javascripts/jqplot/plugins/cursor.js +1108 -0
  18. data/vendor/assets/javascripts/jqplot/plugins/dateAxisRenderer.js +737 -0
  19. data/vendor/assets/javascripts/jqplot/plugins/donutRenderer.js +805 -0
  20. data/vendor/assets/javascripts/jqplot/plugins/dragable.js +225 -0
  21. data/vendor/assets/javascripts/jqplot/plugins/enhancedLegendRenderer.js +305 -0
  22. data/vendor/assets/javascripts/jqplot/plugins/funnelRenderer.js +943 -0
  23. data/vendor/assets/javascripts/jqplot/plugins/highlighter.js +465 -0
  24. data/vendor/assets/javascripts/jqplot/plugins/json2.js +475 -0
  25. data/vendor/assets/javascripts/jqplot/plugins/logAxisRenderer.js +529 -0
  26. data/vendor/assets/javascripts/jqplot/plugins/mekkoAxisRenderer.js +611 -0
  27. data/vendor/assets/javascripts/jqplot/plugins/mekkoRenderer.js +437 -0
  28. data/vendor/assets/javascripts/jqplot/plugins/meterGaugeRenderer.js +1030 -0
  29. data/vendor/assets/javascripts/jqplot/plugins/mobile.js +45 -0
  30. data/vendor/assets/javascripts/jqplot/plugins/ohlcRenderer.js +373 -0
  31. data/vendor/assets/javascripts/jqplot/plugins/pieRenderer.js +904 -0
  32. data/vendor/assets/javascripts/jqplot/plugins/pointLabels.js +379 -0
  33. data/vendor/assets/javascripts/jqplot/plugins/pyramidAxisRenderer.js +728 -0
  34. data/vendor/assets/javascripts/jqplot/plugins/pyramidGridRenderer.js +429 -0
  35. data/vendor/assets/javascripts/jqplot/plugins/pyramidRenderer.js +514 -0
  36. data/vendor/assets/javascripts/jqplot/plugins/trendline.js +223 -0
  37. data/vendor/assets/stylesheets/{jqplot.1.0.0b2_r792.css → jqplot.css} +48 -15
  38. metadata +64 -25
@@ -0,0 +1,223 @@
1
+ /**
2
+ * jqPlot
3
+ * Pure JavaScript plotting plugin using jQuery
4
+ *
5
+ * Version: 1.0.5
6
+ * Revision: 1122+
7
+ *
8
+ * Copyright (c) 2009-2013 Chris Leonello
9
+ * jqPlot is currently available for use in all personal or commercial projects
10
+ * under both the MIT (http://www.opensource.org/licenses/mit-license.php) and GPL
11
+ * version 2.0 (http://www.gnu.org/licenses/gpl-2.0.html) licenses. This means that you can
12
+ * choose the license that best suits your project and use it accordingly.
13
+ *
14
+ * Although not required, the author would appreciate an email letting him
15
+ * know of any substantial use of jqPlot. You can reach the author at:
16
+ * chris at jqplot dot com or see http://www.jqplot.com/info.php .
17
+ *
18
+ * If you are feeling kind and generous, consider supporting the project by
19
+ * making a donation at: http://www.jqplot.com/donate.php .
20
+ *
21
+ * sprintf functions contained in jqplot.sprintf.js by Ash Searle:
22
+ *
23
+ * version 2007.04.27
24
+ * author Ash Searle
25
+ * http://hexmen.com/blog/2007/03/printf-sprintf/
26
+ * http://hexmen.com/js/sprintf.js
27
+ * The author (Ash Searle) has placed this code in the public domain:
28
+ * "This code is unrestricted: you are free to use it however you like."
29
+ *
30
+ */
31
+ (function($) {
32
+
33
+ /**
34
+ * Class: $.jqplot.Trendline
35
+ * Plugin which will automatically compute and draw trendlines for plotted data.
36
+ */
37
+ $.jqplot.Trendline = function() {
38
+ // Group: Properties
39
+
40
+ // prop: show
41
+ // Wether or not to show the trend line.
42
+ this.show = $.jqplot.config.enablePlugins;
43
+ // prop: color
44
+ // CSS color spec for the trend line.
45
+ // By default this wil be the same color as the primary line.
46
+ this.color = '#666666';
47
+ // prop: renderer
48
+ // Renderer to use to draw the trend line.
49
+ // The data series that is plotted may not be rendered as a line.
50
+ // Therefore, we use our own line renderer here to draw a trend line.
51
+ this.renderer = new $.jqplot.LineRenderer();
52
+ // prop: rendererOptions
53
+ // Options to pass to the line renderer.
54
+ // By default, markers are not shown on trend lines.
55
+ this.rendererOptions = {marker:{show:false}};
56
+ // prop: label
57
+ // Label for the trend line to use in the legend.
58
+ this.label = '';
59
+ // prop: type
60
+ // Either 'exponential', 'exp', or 'linear'.
61
+ this.type = 'linear';
62
+ // prop: shadow
63
+ // true or false, wether or not to show the shadow.
64
+ this.shadow = true;
65
+ // prop: markerRenderer
66
+ // Renderer to use to draw markers on the line.
67
+ // I think this is wrong.
68
+ this.markerRenderer = {show:false};
69
+ // prop: lineWidth
70
+ // Width of the trend line.
71
+ this.lineWidth = 1.5;
72
+ // prop: shadowAngle
73
+ // Angle of the shadow on the trend line.
74
+ this.shadowAngle = 45;
75
+ // prop: shadowOffset
76
+ // pixel offset for each stroke of the shadow.
77
+ this.shadowOffset = 1.0;
78
+ // prop: shadowAlpha
79
+ // Alpha transparency of the shadow.
80
+ this.shadowAlpha = 0.07;
81
+ // prop: shadowDepth
82
+ // number of strokes to make of the shadow.
83
+ this.shadowDepth = 3;
84
+ this.isTrendline = true;
85
+
86
+ };
87
+
88
+ $.jqplot.postSeriesInitHooks.push(parseTrendLineOptions);
89
+ $.jqplot.postDrawSeriesHooks.push(drawTrendline);
90
+ $.jqplot.addLegendRowHooks.push(addTrendlineLegend);
91
+
92
+ // called witin scope of the legend object
93
+ // current series passed in
94
+ // must return null or an object {label:label, color:color}
95
+ function addTrendlineLegend(series) {
96
+ var ret = null;
97
+ if (series.trendline && series.trendline.show) {
98
+ var lt = series.trendline.label.toString();
99
+ if (lt) {
100
+ ret = {label:lt, color:series.trendline.color};
101
+ }
102
+ }
103
+ return ret;
104
+ }
105
+
106
+ // called within scope of a series
107
+ function parseTrendLineOptions (target, data, seriesDefaults, options, plot) {
108
+ if (this._type && (this._type === 'line' || this._type == 'bar')) {
109
+ this.trendline = new $.jqplot.Trendline();
110
+ options = options || {};
111
+ $.extend(true, this.trendline, {color:this.color}, seriesDefaults.trendline, options.trendline);
112
+ this.trendline.renderer.init.call(this.trendline, null);
113
+ }
114
+ }
115
+
116
+ // called within scope of series object
117
+ function drawTrendline(sctx, options) {
118
+ // if we have options, merge trendline options in with precedence
119
+ options = $.extend(true, {}, this.trendline, options);
120
+
121
+ if (this.trendline && options.show) {
122
+ var fit;
123
+ // this.renderer.setGridData.call(this);
124
+ var data = options.data || this.data;
125
+ fit = fitData(data, this.trendline.type);
126
+ var gridData = options.gridData || this.renderer.makeGridData.call(this, fit.data);
127
+ this.trendline.renderer.draw.call(this.trendline, sctx, gridData, {showLine:true, shadow:this.trendline.shadow});
128
+ }
129
+ }
130
+
131
+ function regression(x, y, typ) {
132
+ var type = (typ == null) ? 'linear' : typ;
133
+ var N = x.length;
134
+ var slope;
135
+ var intercept;
136
+ var SX = 0;
137
+ var SY = 0;
138
+ var SXX = 0;
139
+ var SXY = 0;
140
+ var SYY = 0;
141
+ var Y = [];
142
+ var X = [];
143
+
144
+ if (type == 'linear') {
145
+ X = x;
146
+ Y = y;
147
+ }
148
+ else if (type == 'exp' || type == 'exponential') {
149
+ for ( var i=0; i<y.length; i++) {
150
+ // ignore points <= 0, log undefined.
151
+ if (y[i] <= 0) {
152
+ N--;
153
+ }
154
+ else {
155
+ X.push(x[i]);
156
+ Y.push(Math.log(y[i]));
157
+ }
158
+ }
159
+ }
160
+
161
+ for ( var i = 0; i < N; i++) {
162
+ SX = SX + X[i];
163
+ SY = SY + Y[i];
164
+ SXY = SXY + X[i]* Y[i];
165
+ SXX = SXX + X[i]* X[i];
166
+ SYY = SYY + Y[i]* Y[i];
167
+ }
168
+
169
+ slope = (N*SXY - SX*SY)/(N*SXX - SX*SX);
170
+ intercept = (SY - slope*SX)/N;
171
+
172
+ return [slope, intercept];
173
+ }
174
+
175
+ function linearRegression(X,Y) {
176
+ var ret;
177
+ ret = regression(X,Y,'linear');
178
+ return [ret[0],ret[1]];
179
+ }
180
+
181
+ function expRegression(X,Y) {
182
+ var ret;
183
+ var x = X;
184
+ var y = Y;
185
+ ret = regression(x, y,'exp');
186
+ var base = Math.exp(ret[0]);
187
+ var coeff = Math.exp(ret[1]);
188
+ return [base, coeff];
189
+ }
190
+
191
+ function fitData(data, typ) {
192
+ var type = (typ == null) ? 'linear' : typ;
193
+ var ret;
194
+ var res;
195
+ var x = [];
196
+ var y = [];
197
+ var ypred = [];
198
+
199
+ for (i=0; i<data.length; i++){
200
+ if (data[i] != null && data[i][0] != null && data[i][1] != null) {
201
+ x.push(data[i][0]);
202
+ y.push(data[i][1]);
203
+ }
204
+ }
205
+
206
+ if (type == 'linear') {
207
+ ret = linearRegression(x,y);
208
+ for ( var i=0; i<x.length; i++){
209
+ res = ret[0]*x[i] + ret[1];
210
+ ypred.push([x[i], res]);
211
+ }
212
+ }
213
+ else if (type == 'exp' || type == 'exponential') {
214
+ ret = expRegression(x,y);
215
+ for ( var i=0; i<x.length; i++){
216
+ res = ret[1]*Math.pow(ret[0],x[i]);
217
+ ypred.push([x[i], res]);
218
+ }
219
+ }
220
+ return {data: ypred, slope: ret[0], intercept: ret[1]};
221
+ }
222
+
223
+ })(jQuery);
@@ -25,14 +25,15 @@
25
25
  margin-right: 10px;
26
26
  }
27
27
 
28
- .jqplot-y2axis, .jqplot-y3axis, .jqplot-y4axis, .jqplot-y5axis, .jqplot-y6axis, .jqplot-y7axis, .jqplot-y8axis, .jqplot-y9axis {
28
+ .jqplot-y2axis, .jqplot-y3axis, .jqplot-y4axis, .jqplot-y5axis, .jqplot-y6axis, .jqplot-y7axis, .jqplot-y8axis, .jqplot-y9axis, .jqplot-yMidAxis {
29
29
  margin-left: 10px;
30
30
  margin-right: 10px;
31
31
  }
32
32
 
33
33
  /*rules applied to all axis tick divs*/
34
- .jqplot-axis-tick, .jqplot-xaxis-tick, .jqplot-yaxis-tick, .jqplot-x2axis-tick, .jqplot-y2axis-tick, .jqplot-y3axis-tick, .jqplot-y4axis-tick, .jqplot-y5axis-tick, .jqplot-y6axis-tick, .jqplot-y7axis-tick, .jqplot-y8axis-tick, .jqplot-y9axis-tick {
34
+ .jqplot-axis-tick, .jqplot-xaxis-tick, .jqplot-yaxis-tick, .jqplot-x2axis-tick, .jqplot-y2axis-tick, .jqplot-y3axis-tick, .jqplot-y4axis-tick, .jqplot-y5axis-tick, .jqplot-y6axis-tick, .jqplot-y7axis-tick, .jqplot-y8axis-tick, .jqplot-y9axis-tick, .jqplot-yMidAxis-tick {
35
35
  position: absolute;
36
+ white-space: pre;
36
37
  }
37
38
 
38
39
 
@@ -78,15 +79,11 @@
78
79
  text-align: left;
79
80
  }
80
81
 
81
- .jqplot-meterGauge-tick {
82
- font-size: 0.75em;
83
- color: #999999;
82
+ .jqplot-yMidAxis-tick {
83
+ text-align: center;
84
+ white-space: nowrap;
84
85
  }
85
86
 
86
- .jqplot-meterGauge-label {
87
- font-size: 1em;
88
- color: #999999;
89
- }
90
87
  .jqplot-xaxis-label {
91
88
  margin-top: 10px;
92
89
  font-size: 11pt;
@@ -106,12 +103,28 @@
106
103
  position: absolute;
107
104
  }
108
105
 
106
+ .jqplot-yMidAxis-label {
107
+ font-size: 11pt;
108
+ position: absolute;
109
+ }
110
+
109
111
  .jqplot-y2axis-label, .jqplot-y3axis-label, .jqplot-y4axis-label, .jqplot-y5axis-label, .jqplot-y6axis-label, .jqplot-y7axis-label, .jqplot-y8axis-label, .jqplot-y9axis-label {
110
112
  /* text-align: center;*/
111
113
  font-size: 11pt;
114
+ margin-left: 10px;
112
115
  position: absolute;
113
116
  }
114
117
 
118
+ .jqplot-meterGauge-tick {
119
+ font-size: 0.75em;
120
+ color: #999999;
121
+ }
122
+
123
+ .jqplot-meterGauge-label {
124
+ font-size: 1em;
125
+ color: #999999;
126
+ }
127
+
115
128
  table.jqplot-table-legend {
116
129
  margin-top: 12px;
117
130
  margin-bottom: 12px;
@@ -130,11 +143,31 @@ td.jqplot-table-legend {
130
143
  vertical-align:middle;
131
144
  }
132
145
 
146
+ /*
147
+ These rules could be used instead of assigning
148
+ element styles and relying on js object properties.
149
+ */
150
+
151
+ /*
152
+ td.jqplot-table-legend-swatch {
153
+ padding-top: 0.5em;
154
+ text-align: center;
155
+ }
156
+
157
+ tr.jqplot-table-legend:first td.jqplot-table-legend-swatch {
158
+ padding-top: 0px;
159
+ }
160
+ */
161
+
133
162
  td.jqplot-seriesToggle:hover, td.jqplot-seriesToggle:active {
134
163
  cursor: pointer;
135
164
  }
136
165
 
137
- td.jqplot-table-legend > div {
166
+ .jqplot-table-legend .jqplot-series-hidden {
167
+ text-decoration: line-through;
168
+ }
169
+
170
+ div.jqplot-table-legend-swatch-outline {
138
171
  border: 1px solid #cccccc;
139
172
  padding:1px;
140
173
  }
@@ -173,7 +206,7 @@ table.jqplot-cursor-tooltip {
173
206
  padding: 1px;
174
207
  }
175
208
 
176
- .jqplot-highlighter-tooltip {
209
+ .jqplot-highlighter-tooltip, .jqplot-canvasOverlay-tooltip {
177
210
  border: 1px solid #cccccc;
178
211
  font-size: 0.75em;
179
212
  white-space: nowrap;
@@ -187,13 +220,13 @@ table.jqplot-cursor-tooltip {
187
220
  }
188
221
 
189
222
  td.jqplot-cursor-legend-swatch {
190
- vertical-align:middle;
191
- text-align:center;
223
+ vertical-align: middle;
224
+ text-align: center;
192
225
  }
193
226
 
194
227
  div.jqplot-cursor-legend-swatch {
195
- width:1.2em;
196
- height:0.7em;
228
+ width: 1.2em;
229
+ height: 0.7em;
197
230
  }
198
231
 
199
232
  .jqplot-error {
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: jqplot-rails
3
3
  version: !ruby/object:Gem::Version
4
- version: '0.1'
4
+ version: '0.3'
5
5
  prerelease:
6
6
  platform: ruby
7
7
  authors:
@@ -9,52 +9,56 @@ authors:
9
9
  autorequire:
10
10
  bindir: bin
11
11
  cert_chain: []
12
- date: 2011-09-13 00:00:00.000000000Z
12
+ date: 2013-02-12 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: railties
16
- requirement: &70262076144820 !ruby/object:Gem::Requirement
16
+ requirement: !ruby/object:Gem::Requirement
17
17
  none: false
18
18
  requirements:
19
- - - ~>
19
+ - - ! '>='
20
20
  - !ruby/object:Gem::Version
21
- version: '3.0'
21
+ version: '0'
22
22
  type: :runtime
23
23
  prerelease: false
24
- version_requirements: *70262076144820
25
- - !ruby/object:Gem::Dependency
26
- name: thor
27
- requirement: &70262076144240 !ruby/object:Gem::Requirement
24
+ version_requirements: !ruby/object:Gem::Requirement
28
25
  none: false
29
26
  requirements:
30
- - - ~>
27
+ - - ! '>='
31
28
  - !ruby/object:Gem::Version
32
- version: '0.14'
33
- type: :runtime
34
- prerelease: false
35
- version_requirements: *70262076144240
29
+ version: '0'
36
30
  - !ruby/object:Gem::Dependency
37
31
  name: bundler
38
- requirement: &70262076143240 !ruby/object:Gem::Requirement
32
+ requirement: !ruby/object:Gem::Requirement
39
33
  none: false
40
34
  requirements:
41
- - - ~>
35
+ - - ! '>='
42
36
  - !ruby/object:Gem::Version
43
- version: 1.0.0
37
+ version: '0'
44
38
  type: :development
45
39
  prerelease: false
46
- version_requirements: *70262076143240
40
+ version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
42
+ requirements:
43
+ - - ! '>='
44
+ - !ruby/object:Gem::Version
45
+ version: '0'
47
46
  - !ruby/object:Gem::Dependency
48
47
  name: rails
49
- requirement: &70262076142060 !ruby/object:Gem::Requirement
48
+ requirement: !ruby/object:Gem::Requirement
50
49
  none: false
51
50
  requirements:
52
- - - ~>
51
+ - - ! '>='
53
52
  - !ruby/object:Gem::Version
54
- version: '3.0'
53
+ version: '0'
55
54
  type: :development
56
55
  prerelease: false
57
- version_requirements: *70262076142060
56
+ version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
58
+ requirements:
59
+ - - ! '>='
60
+ - !ruby/object:Gem::Version
61
+ version: '0'
58
62
  description: JqPlot for Rails 3.1 asset pipeline
59
63
  email:
60
64
  - matt@eightbitraptor.com
@@ -62,9 +66,43 @@ executables: []
62
66
  extensions: []
63
67
  extra_rdoc_files: []
64
68
  files:
65
- - vendor/assets/javascripts/jqplot.1.0.0b2_r792.js
66
- - vendor/assets/stylesheets/jqplot.1.0.0b2_r792.css
69
+ - vendor/assets/stylesheets/jqplot.css
70
+ - vendor/assets/javascripts/jqplot/index.js
71
+ - vendor/assets/javascripts/jqplot/jquery.jqplot.js
72
+ - vendor/assets/javascripts/jqplot/excanvas.js
73
+ - vendor/assets/javascripts/jqplot/plugins/trendline.js
74
+ - vendor/assets/javascripts/jqplot/plugins/dragable.js
75
+ - vendor/assets/javascripts/jqplot/plugins/mobile.js
76
+ - vendor/assets/javascripts/jqplot/plugins/canvasOverlay.js
77
+ - vendor/assets/javascripts/jqplot/plugins/BezierCurveRenderer.js
78
+ - vendor/assets/javascripts/jqplot/plugins/dateAxisRenderer.js
79
+ - vendor/assets/javascripts/jqplot/plugins/json2.js
80
+ - vendor/assets/javascripts/jqplot/plugins/cursor.js
81
+ - vendor/assets/javascripts/jqplot/plugins/barRenderer.js
82
+ - vendor/assets/javascripts/jqplot/plugins/categoryAxisRenderer.js
83
+ - vendor/assets/javascripts/jqplot/plugins/canvasAxisLabelRenderer.js
84
+ - vendor/assets/javascripts/jqplot/plugins/mekkoRenderer.js
85
+ - vendor/assets/javascripts/jqplot/plugins/canvasTextRenderer.js
86
+ - vendor/assets/javascripts/jqplot/plugins/funnelRenderer.js
87
+ - vendor/assets/javascripts/jqplot/plugins/blockRenderer.js
88
+ - vendor/assets/javascripts/jqplot/plugins/meterGaugeRenderer.js
89
+ - vendor/assets/javascripts/jqplot/plugins/enhancedLegendRenderer.js
90
+ - vendor/assets/javascripts/jqplot/plugins/mekkoAxisRenderer.js
91
+ - vendor/assets/javascripts/jqplot/plugins/pointLabels.js
92
+ - vendor/assets/javascripts/jqplot/plugins/logAxisRenderer.js
93
+ - vendor/assets/javascripts/jqplot/plugins/pyramidAxisRenderer.js
94
+ - vendor/assets/javascripts/jqplot/plugins/pyramidGridRenderer.js
95
+ - vendor/assets/javascripts/jqplot/plugins/ohlcRenderer.js
96
+ - vendor/assets/javascripts/jqplot/plugins/pyramidRenderer.js
97
+ - vendor/assets/javascripts/jqplot/plugins/highlighter.js
98
+ - vendor/assets/javascripts/jqplot/plugins/pieRenderer.js
99
+ - vendor/assets/javascripts/jqplot/plugins/donutRenderer.js
100
+ - vendor/assets/javascripts/jqplot/plugins/ciParser.js
101
+ - vendor/assets/javascripts/jqplot/plugins/canvasAxisTickRenderer.js
102
+ - vendor/assets/javascripts/jqplot/plugins/bubbleRenderer.js
67
103
  - lib/jqplot-rails.rb
104
+ - lib/jqplot-rails/view_helpers.rb
105
+ - lib/jqplot-rails/railtie.rb
68
106
  homepage:
69
107
  licenses: []
70
108
  post_install_message:
@@ -85,8 +123,9 @@ required_rubygems_version: !ruby/object:Gem::Requirement
85
123
  version: '0'
86
124
  requirements: []
87
125
  rubyforge_project:
88
- rubygems_version: 1.8.10
126
+ rubygems_version: 1.8.24
89
127
  signing_key:
90
128
  specification_version: 3
91
129
  summary: JqPlot for Rails 3.1 asset pipeline
92
130
  test_files: []
131
+ has_rdoc: