Возможно ли иметь регулярный столбец и столбец с накоплением на одном и том же графике jqPlot?

Я пытаюсь построить гистограмму, где 1-й ряд представляет собой доход, а следующие три представляют собой различные виды расходов. Таким образом, 1-й ряд должен быть одним столбцом, а остальные три ряда - столбиком с накоплением. Вот мой код для того же.

var s0 = [15, 17, 19, 21];
var s1 = [2, 6, 7, 10];
var s2 = [7, 5, 3, 4];
var s3 = [14, 9, 3, 8];
var ticks = ['May', 'June', 'July', 'August'];
var plot3 = $.jqplot('chart1', [s0, s1, s2, s3], {
    stackSeries: true,
    animate: true,
    seriesDefaults: {
        renderer: $.jqplot.BarRenderer,
        pointLabels: {
            show: true,
        },
        rendererOptions: {
            fillToZero: true,
            barMargin: 30,
            barWidth: 50,
            barPadding: 5,
            barDirection: 'vertical'
        },
    },
    series: [
        {
            disableStack: true,
            label: 'Revenue'
        },
        {label: 'Expense1'}, {label: 'Expense2'}, {label: 'Expense3'}
    ],
    axesDefaults: {
        tickRenderer: $.jqplot.CanvasAxisTickRenderer,
        tickOptions: {
            fontSize: '13pt'
        }
    },
    axes: {
        xaxis: {
            renderer: $.jqplot.CategoryAxisRenderer,
            ticks: ticks
        },
        yaxis: {
        }
    },
    legend: {
        show: true,
        location: 'e',
        placement: 'outside'
    }
}); 

Я добавил disableStack: true для первой серии, чтобы исключить ее из стека, но диаграмма по-прежнему считает ее частью стека. Вот вывод моего кода.

Вывод моего кода

Есть ли способ исправить это? Спасибо.


person Abhay    schedule 08.01.2014    source источник


Ответы (1)


да. Неправильный порядок серии, которую вы передаете в качестве аргумента. ДО серии с накоплением ПОСЛЕ серии с одним стержнем, а не наоборот...

Итак, вы должны переместить первую серию в качестве последнего аргумента...

var plot3 = $.jqplot('chart', [s1, s2, s3, s0], {

а затем вам нужно установить для свойства disableStack значение «true» для последней серии...

series: [
    {label: 'Expense1'}, {label: 'Expense2'}, {label: 'Expense3',label: 'Revenue', disableStack: true}
],

... и вам нужно настроить поля, размеры и отступы столбцов по своему усмотрению...

person meccanismo.complesso    schedule 08.01.2014