1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677 |
- Ext.require('Ext.chart.*');
- Ext.require(['Ext.layout.container.Fit', 'Ext.window.MessageBox']);
- Ext.onReady(function () {
- var chart = Ext.create('Ext.chart.Chart', {
- xtype: 'chart',
- animate: true,
- shadow: true,
- store: store1,
- axes: [{
- type: 'Numeric',
- position: 'left',
- fields: ['data1'],
- title: 'Hits',
- grid: true,
- minimum: 0,
- maximum: 100
- }, {
- type: 'Category',
- position: 'bottom',
- fields: ['name'],
- title: 'Months',
- label: {
- rotate: {
- degrees: 270
- }
- }
- }],
- series: [{
- type: 'column',
- axis: 'left',
- gutter: 80,
- xField: 'name',
- yField: ['data1'],
- tips: {
- trackMouse: true,
- width: 74,
- height: 38,
- renderer: function(storeItem, item) {
- this.setTitle(storeItem.get('name'));
- this.update(storeItem.get('data1'));
- }
- },
- style: {
- fill: '#38B8BF'
- }
- }]
- });
- var panel1 = Ext.create('widget.panel', {
- width: 800,
- height: 400,
- title: 'Column Chart with Reload - Hits per Month',
- renderTo: Ext.getBody(),
- layout: 'fit',
- tbar: [{
- text: 'Save Chart',
- handler: function() {
- Ext.MessageBox.confirm('Confirm Download', 'Would you like to download the chart as an image?', function(choice){
- if(choice == 'yes'){
- chart.save({
- type: 'image/png'
- });
- }
- });
- }
- }, {
- text: 'Reload Data',
- handler: function() {
- store1.loadData(generateData());
- }
- }],
- items: chart
- });
- });
|