Upgrade to ExtJS 4.0.0 - Released 04/26/2011
[extjs.git] / examples / charts / Bar.js
diff --git a/examples/charts/Bar.js b/examples/charts/Bar.js
new file mode 100644 (file)
index 0000000..3c1960d
--- /dev/null
@@ -0,0 +1,103 @@
+Ext.require('Ext.chart.*');
+Ext.require(['Ext.Window', 'Ext.fx.target.Sprite', 'Ext.layout.container.Fit']);
+
+Ext.onReady(function () {
+    Ext.chart.theme.White = Ext.extend(Ext.chart.theme.Base, {
+        constructor: function() {
+           Ext.chart.theme.White.superclass.constructor.call(this, {
+               axis: {
+                   stroke: 'rgb(8,69,148)',
+                   'stroke-width': 1
+               },
+               axisLabel: {
+                   fill: 'rgb(8,69,148)',
+                   font: '12px Arial',
+                   'font-family': '"Arial',
+                   spacing: 2,
+                   padding: 5,
+                   renderer: function(v) { return v; }
+               },
+               axisTitle: {
+                  font: 'bold 18px Arial'
+               }
+           });
+        }
+    });
+
+    var win = Ext.create('Ext.Window', {
+        width: 800,
+        height: 600,
+        hidden: false,
+        maximizable: true,
+        title: 'Bar Chart',
+        renderTo: Ext.getBody(),
+        layout: 'fit',
+        tbar: [{
+            text: 'Reload Data',
+            handler: function() {
+                store1.loadData(generateData());
+            }
+        }],
+        items: {
+            id: 'chartCmp',
+            xtype: 'chart',
+            animate: true,
+            shadow: true,
+            store: store1,
+            axes: [{
+                type: 'Numeric',
+                position: 'bottom',
+                fields: ['data1'],
+                label: {
+                    renderer: Ext.util.Format.numberRenderer('0,0')
+                },
+                title: 'Number of Hits',
+                grid: true,
+                minimum: 0
+            }, {
+                type: 'Category',
+                position: 'left',
+                fields: ['name'],
+                title: 'Month of the Year'
+            }],
+            theme: 'White',
+            background: {
+              gradient: {
+                id: 'backgroundGradient',
+                angle: 45,
+                stops: {
+                  0: {
+                    color: '#ffffff'
+                  },
+                  100: {
+                    color: '#eaf1f8'
+                  }
+                }
+              }
+            },
+            series: [{
+                type: 'bar',
+                axis: 'bottom',
+                highlight: true,
+                tips: {
+                  trackMouse: true,
+                  width: 140,
+                  height: 28,
+                  renderer: function(storeItem, item) {
+                    this.setTitle(storeItem.get('name') + ': ' + storeItem.get('data1') + ' views');
+                  }
+                },
+                label: {
+                  display: 'insideEnd',
+                    field: 'data1',
+                    renderer: Ext.util.Format.numberRenderer('0'),
+                    orientation: 'horizontal',
+                    color: '#333',
+                  'text-anchor': 'middle'
+                },
+                xField: 'name',
+                yField: ['data1']
+            }]
+        }
+    });
+});