Нумерация страниц в Highcharts - PullRequest
2 голосов
/ 05 августа 2011

Мне нужно включить нумерацию для моего графика (гистограмма).так что я могу контролировать количество баров, которые могут быть отображены.Кто-нибудь пробовал это раньше?

Если этого можно достичь, кто-нибудь поможет мне разобраться с этим.

Ответы [ 3 ]

2 голосов
/ 06 августа 2011

Другой способ сделать это - использовать axis.setExtremes , чтобы увеличить первую страницу, а затем обновить параметры для предыдущей / следующей страницы, вместо того, чтобы диаграмма обновляла фактические перемещениялевый / правый.

2 голосов
/ 06 августа 2011

Основная идея изменения «данных» вашего графика - обновить информацию о сериях для него.Так что, нажимая кнопки нумерации страниц для своей диаграммы, вы обновляете данные серии напрямую.

Я собрал простой пример скрипки, основанный на другом вопросе, на который я ответил ранее.

Проверьте это здесь: http://jsfiddle.net/Robodude/EmMxH/71/

html:

<SELECT id="list">
<OPTION VALUE="A">Data Set A
<OPTION VALUE="B">Data Set A + B
<OPTION VALUE="C">Data Set A + B + C       
</SELECT>
<button id="change">Change Data Source</button>

<div id="container" style="height: 400px"></div>

Javascript / Jquery:

var options = {
    chart: {
        renderTo: 'container',
        defaultSeriesType: 'column'
    },
    series: []
};

$("#change").click(function(){
if ($("#list").val() == "A")
{
    options.series = [{name: 'A', data: [1,2,3,2,1]}]
}
else if ($("#list").val() == "B")
{
    options.series = [{name: 'A', data: [1,2,3,2,1]},{name: 'B', data: [3,2,1,2,3]}]
}
else if ($("#list").val() == "C")
{
    options.series = [{name: 'A', data: [1,2,3,2,1]},{name: 'B', data: [3,2,1,2,3]},{name: 'C', data: [1,1,1,1,1]}]
}


var chart = new Highcharts.Chart(options);    
});

Это предыдущий вопрос, на который я помог ответить: Перезагрузить данные диаграммы с помощьюJSON с Highcharts

Очевидно, это довольно прямой пример.Если вы обновите свой пост, добавив больше информации, я могу подробнее остановиться на этом.

Удачи :)

1 голос
/ 20 декабря 2012

Нумерация страниц в старших чартах может быть легко достигнута с помощью дополнительного плагина, плагина Jquery pagination.

Я нашел это сообщение на форуме информативным и полезным.

function pageselectCallback(page_index, jq){

var items_per_page = 3,
    max_elem = 5,
    from = page_index * items_per_page,
    to = from + max_elem,
    newcontent = '',
    chartData = [];

//pie.series[0].setData( data.slice(from,to) );
if(typeof pie !== 'object') {
    pie = new Highcharts.Chart({
        chart: {
            renderTo: 'container',
            type: 'column'
        },
        series: [{
            data: []
        }]
    });        
}

pie.series[0].setData( data.slice(from, to) );

// Prevent click eventpropagation
return false;
}

А рабочая демоверсия здесь .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...