Ext.chart.Chart.CHART_URL = '../../resources/charts.swf';

Ext.onReady(function(){

   
var store = new Ext.data.JsonStore({
        fields
:['name', 'visits', 'views'],
        data
: [
           
{name:'Jul 07', visits: 245000, views: 3000000},
           
{name:'Aug 07', visits: 240000, views: 3500000},
           
{name:'Sep 07', visits: 355000, views: 4000000},
           
{name:'Oct 07', visits: 375000, views: 4200000},
           
{name:'Nov 07', visits: 490000, views: 4500000},
           
{name:'Dec 07', visits: 495000, views: 5800000},
           
{name:'Jan 08', visits: 520000, views: 6000000},
           
{name:'Feb 08', visits: 620000, views: 7500000}
       
]
   
});

   
// extra extra simple
   
new Ext.Panel({
        title
: 'ExtJS.com Visits Trend, 2007/2008 (No styling)',
        renderTo
: 'container',
        width
:500,
        height
:300,
        layout
:'fit',

        items
: {
            xtype
: 'linechart',
            store
: store,
            xField
: 'name',
            yField
: 'visits',
                        listeners
: {
                                itemclick
: function(o){
                                       
var rec = store.getAt(o.index);
                                       
Ext.example.msg('Item Selected', 'You chose {0}.', rec.get('name'));
                               
}
                       
}
       
}
   
});

   
// extra simple
   
new Ext.Panel({
        iconCls
:'chart',
        title
: 'ExtJS.com Visits Trend, 2007/2008 (Simple styling)',
        frame
:true,
        renderTo
: 'container',
        width
:500,
        height
:300,
        layout
:'fit',

        items
: {
            xtype
: 'linechart',
            store
: store,
            url
: '../../resources/charts.swf',
            xField
: 'name',
            yField
: 'visits',
            yAxis
: new Ext.chart.NumericAxis({
                displayName
: 'Visits',
                labelRenderer
: Ext.util.Format.numberRenderer('0,0')
           
}),
            tipRenderer
: function(chart, record){
               
return Ext.util.Format.number(record.data.visits, '0,0') + ' visits in ' + record.data.name;
           
}
       
}
   
});

   
// more complex with a custom look
   
new Ext.Panel({
        iconCls
:'chart',
        title
: 'ExtJS.com Visits and Pageviews, 2007/2008 (Full styling)',
        frame
:true,
        renderTo
: 'container',
        width
:500,
        height
:300,
        layout
:'fit',

        items
: {
            xtype
: 'columnchart',
            store
: store,
            url
:'../../resources/charts.swf',
            xField
: 'name',
            yAxis
: new Ext.chart.NumericAxis({
                displayName
: 'Visits',
                labelRenderer
: Ext.util.Format.numberRenderer('0,0')
           
}),
            tipRenderer
: function(chart, record, index, series){
               
if(series.yField == 'visits'){
                   
return Ext.util.Format.number(record.data.visits, '0,0') + ' visits in ' + record.data.name;
               
}else{
                   
return Ext.util.Format.number(record.data.views, '0,0') + ' page views in ' + record.data.name;
               
}
           
},
            chartStyle
: {
                padding
: 10,
                animationEnabled
: true,
                font
: {
                    name
: 'Tahoma',
                    color
: 0x444444,
                    size
: 11
               
},
                dataTip
: {
                    padding
: 5,
                    border
: {
                        color
: 0x99bbe8,
                        size
:1
                   
},
                    background
: {
                        color
: 0xDAE7F6,
                        alpha
: .9
                   
},
                    font
: {
                        name
: 'Tahoma',
                        color
: 0x15428B,
                        size
: 10,
                        bold
: true
                   
}
               
},
                xAxis
: {
                    color
: 0x69aBc8,
                    majorTicks
: {color: 0x69aBc8, length: 4},
                    minorTicks
: {color: 0x69aBc8, length: 2},
                    majorGridLines
: {size: 1, color: 0xeeeeee}
               
},
                yAxis
: {
                    color
: 0x69aBc8,
                    majorTicks
: {color: 0x69aBc8, length: 4},
                    minorTicks
: {color: 0x69aBc8, length: 2},
                    majorGridLines
: {size: 1, color: 0xdfe8f6}
               
}
           
},
            series
: [{
                type
: 'column',
                displayName
: 'Page Views',
                yField
: 'views',
                style
: {
                    image
:'bar.gif',
                    mode
: 'stretch',
                    color
:0x99BBE8
               
}
           
},{
                type
:'line',
                displayName
: 'Visits',
                yField
: 'visits',
                style
: {
                    color
: 0x15428B
               
}
           
}]
       
}
   
});
});