docs/default.css
[roojs1] / docs / symbols / src / Roo_bootstrap_Graph.js.html
1 <html><head><title>../roojs1/Roo/bootstrap/Graph.js</title><link rel="stylesheet" type="text/css" href="../../../css/highlight-js.css"/></head><body class="highlightpage"><code class="jsdoc-pretty">    <span class="jsdoc-comment">/*
2  * - LGPL
3  *
4  * Graph
5  * 
6  */
7
8
9 /**
10  * @class Roo.bootstrap.Graph
11  * @extends Roo.bootstrap.Component
12  * Bootstrap Graph class
13 &gt; Prameters
14  -sm {number} sm 4
15  -md {number} md 5
16  @cfg {String} graphtype  bar | vbar | pie
17  @cfg {number} g_x coodinator | centre x (pie)
18  @cfg {number} g_y coodinator | centre y (pie)
19  @cfg {number} g_r radius (pie)
20  @cfg {number} g_height height of the chart (respected by all elements in the set)
21  @cfg {number} g_width width of the chart (respected by all elements in the set)
22  @cfg {Object} title The title of the chart
23     
24  -{Array}  values
25  -opts (object) options for the chart 
26      o {
27      o type (string) type of endings of the bar. Default: 'square'. Other options are: 'round', 'sharp', 'soft'.
28      o gutter (number)(string) default '20%' (WHAT DOES IT DO?)
29      o vgutter (number)
30      o colors (array) colors be used repeatedly to plot the bars. If multicolumn bar is used each sequence of bars with use a different color.
31      o stacked (boolean) whether or not to tread values as in a stacked bar chart
32      o to
33      o stretch (boolean)
34      o }
35  -opts (object) options for the pie
36      o{
37      o cut
38      o startAngle (number)
39      o endAngle (number)
40      } 
41  *
42  * @constructor
43  * Create a new Input
44  * @param {Object} config The config object
45  */
46
47 </span><span class="jsdoc-var">Roo.bootstrap.Graph </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">){
48     </span><span class="jsdoc-var">Roo.bootstrap.Graph.superclass.constructor.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">config</span><span class="jsdoc-syntax">);
49     
50     </span><span class="jsdoc-var">this.addEvents</span><span class="jsdoc-syntax">({
51         </span><span class="jsdoc-comment">// img events
52         /**
53          * @event click
54          * The img click event for the img.
55          * @param {Roo.EventObject} e
56          */
57         </span><span class="jsdoc-string">&quot;click&quot; </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">true
58     </span><span class="jsdoc-syntax">});
59 };
60
61 </span><span class="jsdoc-var">Roo.extend</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">Roo.bootstrap.Graph</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">Roo.bootstrap.Component</span><span class="jsdoc-syntax">,  {
62     
63     </span><span class="jsdoc-var">sm</span><span class="jsdoc-syntax">: 4,
64     </span><span class="jsdoc-var">md</span><span class="jsdoc-syntax">: 5,
65     </span><span class="jsdoc-var">graphtype</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'bar'</span><span class="jsdoc-syntax">,
66     </span><span class="jsdoc-var">g_height</span><span class="jsdoc-syntax">: 250,
67     </span><span class="jsdoc-var">g_width</span><span class="jsdoc-syntax">: 400,
68     </span><span class="jsdoc-var">g_x</span><span class="jsdoc-syntax">: 50,
69     </span><span class="jsdoc-var">g_y</span><span class="jsdoc-syntax">: 50,
70     </span><span class="jsdoc-var">g_r</span><span class="jsdoc-syntax">: 30,
71     </span><span class="jsdoc-var">opts</span><span class="jsdoc-syntax">:{
72         </span><span class="jsdoc-comment">//g_colors: this.colors,
73         </span><span class="jsdoc-var">g_type</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'soft'</span><span class="jsdoc-syntax">,
74         </span><span class="jsdoc-var">g_gutter</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'20%'
75
76     </span><span class="jsdoc-syntax">},
77     </span><span class="jsdoc-var">title </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">false</span><span class="jsdoc-syntax">,
78
79     </span><span class="jsdoc-var">getAutoCreate </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(){
80         
81         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">cfg </span><span class="jsdoc-syntax">= {
82             </span><span class="jsdoc-var">tag</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'div'</span><span class="jsdoc-syntax">,
83             </span><span class="jsdoc-var">html </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">null
84         </span><span class="jsdoc-syntax">};
85         
86         
87         </span><span class="jsdoc-keyword">return  </span><span class="jsdoc-var">cfg</span><span class="jsdoc-syntax">;
88     },
89
90     </span><span class="jsdoc-var">onRender </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">ct</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">position</span><span class="jsdoc-syntax">){
91         </span><span class="jsdoc-var">Roo.bootstrap.Graph.superclass.onRender.call</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">ct</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">position</span><span class="jsdoc-syntax">);
92         </span><span class="jsdoc-var">this.raphael </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">Raphael</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.el.dom</span><span class="jsdoc-syntax">);
93         
94                     </span><span class="jsdoc-comment">// data1 = [[55, 20, 13, 32, 5, 1, 2, 10], [10, 2, 1, 5, 32, 13, 20, 55], [12, 20, 30]],
95                     // data2 = [[55, 20, 13, 32, 5, 1, 2, 10], [10, 2, 1, 5, 32, 13, 20, 55], [12, 20, 30]],
96                     // data3 = [[55, 20, 13, 32, 5, 1, 2, 10], [10, 2, 1, 5, 32, 13, 20, 55], [12, 20, 30]],
97                     // txtattr = { font: &quot;12px 'Fontin Sans', Fontin-Sans, sans-serif&quot; };
98                 /*
99                 r.text(160, 10, &quot;Single Series Chart&quot;).attr(txtattr);
100                 r.text(480, 10, &quot;Multiline Series Chart&quot;).attr(txtattr);
101                 r.text(160, 250, &quot;Multiple Series Stacked Chart&quot;).attr(txtattr);
102                 r.text(480, 250, 'Multiline Series Stacked Vertical Chart. Type &quot;round&quot;').attr(txtattr);
103                 
104                 r.barchart(10, 10, 300, 220, [[55, 20, 13, 32, 5, 1, 2, 10]], 0, {type: &quot;sharp&quot;});
105                 r.barchart(330, 10, 300, 220, data1);
106                 r.barchart(10, 250, 300, 220, data2, {stacked: true});
107                 r.barchart(330, 250, 300, 220, data3, {stacked: true, type: &quot;round&quot;});
108                 */
109                 
110                 // var xdata = [55, 20, 13, 32, 5, 1, 2, 10,5 , 10];
111                 // r.barchart(30, 30, 560, 250,  xdata, {
112                 //    labels : [55, 20, 13, 32, 5, 1, 2, 10,5 , 10],
113                 //     axis : &quot;0 0 1 1&quot;,
114                 //     axisxlabels :  xdata
115                 //     //yvalues : cols,
116                    
117                 // });
118 //        var xdata = [55, 20, 13, 32, 5, 1, 2, 10,5 , 10];
119 //        
120 //        this.load(null,xdata,{
121 //                axis : &quot;0 0 1 1&quot;,
122 //                axisxlabels :  xdata
123 //                });
124
125     </span><span class="jsdoc-syntax">},
126
127     </span><span class="jsdoc-var">load </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">graphtype</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">xdata</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">opts</span><span class="jsdoc-syntax">){
128         </span><span class="jsdoc-var">this.raphael.clear</span><span class="jsdoc-syntax">();
129         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">graphtype</span><span class="jsdoc-syntax">) {
130             </span><span class="jsdoc-var">graphtype </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.graphtype</span><span class="jsdoc-syntax">;
131         }
132         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">opts</span><span class="jsdoc-syntax">){
133             </span><span class="jsdoc-var">opts </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.opts</span><span class="jsdoc-syntax">;
134         }
135         </span><span class="jsdoc-keyword">var </span><span class="jsdoc-var">r </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">this.raphael</span><span class="jsdoc-syntax">,
136             </span><span class="jsdoc-var">fin </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function </span><span class="jsdoc-syntax">() {
137                 </span><span class="jsdoc-var">this.flag </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">r.popup</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.bar.x</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.bar.y</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.bar.value </span><span class="jsdoc-syntax">|| </span><span class="jsdoc-string">&quot;0&quot;</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.insertBefore</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
138             },
139             </span><span class="jsdoc-var">fout </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function </span><span class="jsdoc-syntax">() {
140                 </span><span class="jsdoc-var">this.flag.animate</span><span class="jsdoc-syntax">({</span><span class="jsdoc-var">opacity</span><span class="jsdoc-syntax">: 0}, 300, </span><span class="jsdoc-keyword">function </span><span class="jsdoc-syntax">() {</span><span class="jsdoc-var">this.remove</span><span class="jsdoc-syntax">();});
141             },
142             </span><span class="jsdoc-var">pfin </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
143                 </span><span class="jsdoc-var">this.sector.stop</span><span class="jsdoc-syntax">();
144                 </span><span class="jsdoc-var">this.sector.scale</span><span class="jsdoc-syntax">(1.1, 1.1, </span><span class="jsdoc-var">this.cx</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.cy</span><span class="jsdoc-syntax">);
145
146                 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.label</span><span class="jsdoc-syntax">) {
147                     </span><span class="jsdoc-var">this.label</span><span class="jsdoc-syntax">[0]</span><span class="jsdoc-var">.stop</span><span class="jsdoc-syntax">();
148                     </span><span class="jsdoc-var">this.label</span><span class="jsdoc-syntax">[0]</span><span class="jsdoc-var">.attr</span><span class="jsdoc-syntax">({ </span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">: 7.5 });
149                     </span><span class="jsdoc-var">this.label</span><span class="jsdoc-syntax">[1]</span><span class="jsdoc-var">.attr</span><span class="jsdoc-syntax">({ </span><span class="jsdoc-string">&quot;font-weight&quot;</span><span class="jsdoc-syntax">: 800 });
150                 }
151             },
152             </span><span class="jsdoc-var">pfout </span><span class="jsdoc-syntax">= </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
153                 </span><span class="jsdoc-var">this.sector.animate</span><span class="jsdoc-syntax">({ </span><span class="jsdoc-var">transform</span><span class="jsdoc-syntax">: </span><span class="jsdoc-string">'s1 1 ' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.cx </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-string">' ' </span><span class="jsdoc-syntax">+ </span><span class="jsdoc-var">this.cy </span><span class="jsdoc-syntax">}, 500, </span><span class="jsdoc-string">&quot;bounce&quot;</span><span class="jsdoc-syntax">);
154
155                 </span><span class="jsdoc-keyword">if </span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.label</span><span class="jsdoc-syntax">) {
156                     </span><span class="jsdoc-var">this.label</span><span class="jsdoc-syntax">[0]</span><span class="jsdoc-var">.animate</span><span class="jsdoc-syntax">({ </span><span class="jsdoc-var">r</span><span class="jsdoc-syntax">: 5 }, 500, </span><span class="jsdoc-string">&quot;bounce&quot;</span><span class="jsdoc-syntax">);
157                     </span><span class="jsdoc-var">this.label</span><span class="jsdoc-syntax">[1]</span><span class="jsdoc-var">.attr</span><span class="jsdoc-syntax">({ </span><span class="jsdoc-string">&quot;font-weight&quot;</span><span class="jsdoc-syntax">: 400 });
158                 }
159             };
160
161         </span><span class="jsdoc-keyword">switch</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">graphtype</span><span class="jsdoc-syntax">){
162             </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">'bar'</span><span class="jsdoc-syntax">:
163                 </span><span class="jsdoc-var">this.raphael.barchart</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.g_x</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">this.g_y</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">this.g_width</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">this.g_height</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">xdata</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">opts</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.hover</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fin</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">fout</span><span class="jsdoc-syntax">);
164                 </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
165             </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">'hbar'</span><span class="jsdoc-syntax">:
166                 </span><span class="jsdoc-var">this.raphael.hbarchart</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.g_x</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">this.g_y</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">this.g_width</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">this.g_height</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">xdata</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">opts</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.hover</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">fin</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">fout</span><span class="jsdoc-syntax">);
167                 </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
168             </span><span class="jsdoc-keyword">case </span><span class="jsdoc-string">'pie'</span><span class="jsdoc-syntax">:
169 </span><span class="jsdoc-comment">//                opts = { legend: [&quot;%% - Enterprise Users&quot;, &quot;% - ddd&quot;,&quot;Chrome Users&quot;], legendpos: &quot;west&quot;, 
170 //                href: [&quot;http://raphaeljs.com&quot;, &quot;http://g.raphaeljs.com&quot;]};
171 //            
172                 </span><span class="jsdoc-var">this.raphael.piechart</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.g_x</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">this.g_y</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">this.g_r</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">xdata</span><span class="jsdoc-syntax">,</span><span class="jsdoc-var">opts</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.hover</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">pfin</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">pfout</span><span class="jsdoc-syntax">);
173                 
174                 </span><span class="jsdoc-keyword">break</span><span class="jsdoc-syntax">;
175
176         }
177         
178         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.title</span><span class="jsdoc-syntax">){
179             </span><span class="jsdoc-var">this.raphael.text</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.title.x</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.title.y</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.title.text</span><span class="jsdoc-syntax">)</span><span class="jsdoc-var">.attr</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">this.title.attr</span><span class="jsdoc-syntax">);
180         }
181         
182     },
183     
184     </span><span class="jsdoc-var">setTitle</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">)
185     {
186         </span><span class="jsdoc-var">this.title </span><span class="jsdoc-syntax">= </span><span class="jsdoc-var">o</span><span class="jsdoc-syntax">;
187     },
188     
189     </span><span class="jsdoc-var">initEvents</span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">() {
190         
191         </span><span class="jsdoc-keyword">if</span><span class="jsdoc-syntax">(!</span><span class="jsdoc-var">this.href</span><span class="jsdoc-syntax">){
192             </span><span class="jsdoc-var">this.el.on</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this.onClick</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">);
193         }
194     },
195     
196     </span><span class="jsdoc-var">onClick </span><span class="jsdoc-syntax">: </span><span class="jsdoc-keyword">function</span><span class="jsdoc-syntax">(</span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">)
197     {
198         </span><span class="jsdoc-var">Roo.log</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'img onclick'</span><span class="jsdoc-syntax">);
199         </span><span class="jsdoc-var">this.fireEvent</span><span class="jsdoc-syntax">(</span><span class="jsdoc-string">'click'</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">this</span><span class="jsdoc-syntax">, </span><span class="jsdoc-var">e</span><span class="jsdoc-syntax">);
200     }
201    
202 });
203
204  
205 </span></code></body></html>