Sencha Touch Charts не рендерится - PullRequest
2 голосов
/ 29 ноября 2011

Я совершенно новичок в диаграммах sencha touch и sencha touch, и у меня возникли некоторые проблемы с интеграцией диаграммы в одно из моих представлений.Я, наверное, упускаю что-то очевидное здесь.Вот как я настраиваю переменную chart.

var chart2 = new Ext.chart.Chart({
    width: 500,
    height: 300,
    animate: true,
    store: testStore,
    theme: 'Base:gradients',
    series: [{
        type: 'pie',
        angleField: 'data1',
        label: {
            field: 'name',
            display: 'rotate',
            contrast: true,
            font: '18px Arial'
        }
    }]
});

Простая круговая диаграмма, загружающая свое хранилище данных из

var testStore = new Ext.data.JsonStore({
fields: ['name', 'data1', 'data2', 'data3', 'data4', 'data5'],
data: [
    {'name':'metric one', 'data1':10, 'data2':12, 'data3':14, 'data4':8, 'data5':13},
    {'name':'metric two', 'data1':7, 'data2':8, 'data3':16, 'data4':10, 'data5':3},
    {'name':'metric three', 'data1':5, 'data2':2, 'data3':14, 'data4':12, 'data5':7},
    {'name':'metric four', 'data1':2, 'data2':14, 'data3':6, 'data4':1, 'data5':23},
    {'name':'metric five', 'data1':27, 'data2':38, 'data3':36, 'data4':13, 'data5':33}
]
});

А вот мой ChartViewPanel

SS.views.chartView = Ext.extend(Ext.Panel, {

fullscreen: true,
initComponent: function() {

    console.log("Initializing Chart View");

    this.refreshButton = new Ext.Button({
        text: 'Refresh',
        ui: 'action',
        handler: function() {
            console.log("Refresh button is clicked");
        },
        scope: this
    });

    this.topToolbar = new Ext.Toolbar({
        title: 'Chart View',
        items: [
            { xtype: 'spacer'},
            this.refreshButton
        ]
    });

    this.dockedItems = [this.topToolbar];

    this.items = [chart2];

    console.log(chart);

    SS.views.chartView.superclass.initComponent.call(this);
}
});

Отображается верхняя полоса, но не диаграмма.Консоль javascript также не показывает никаких ошибок.В какой момент я ошибся?Большое спасибо

Ответы [ 3 ]

0 голосов
/ 05 мая 2013

Проблема может быть в ваших правилах CSS, пожалуйста, проверьте ваш стиль

0 голосов
/ 07 февраля 2014

Использование renderTo: Ext.getBody () и добавление высоты решило проблему отображения графика для меня. Спасибо за помощь!

0 голосов
/ 30 ноября 2011

Вам нужно добавить "renderTo" в chart2. Смотри http://docs.sencha.com/touch-charts/1-0/#!/api/Ext.chart.Chart

...