У меня есть диаграмма с разбивкой по областям с двумя сериями текущих и прогнозируемых значений. Каждый из них имеет значения, которые настраиваются в интерактивном режиме и назначаются цвета (проекционные области будут представлять собой оттенок текущих областей). Я не могу понять, как не иметь перерыва между «текущими» и «прогнозируемыми» рядами. Если я присоединяюсь к ним (имитируется щелчком по фигурам в jsfiddle), все значения складываются в течение этого года. Я мог бы выработать вычитаемые значения, но это кажется взломанным. Есть лучший способ сделать это? Я должен отметить, что это фрагмент более крупного дизайна, который я надеюсь не переделать.Запись в зазоре в таблице с разбивкой по областям
http://jsfiddle.net/d3jo0uu5/4/
var svg = dimple.newSvg("#chartContainer", 590, 400);
var s1 = [
{series: 'S1', x: '2014', y: 10},
{series: 'S1', x: '2015', y: 15},
{series: 'S1', x: '2016', y: 15},
{series: 'S2', x: '2014', y: 20},
{series: 'S2', x: '2015', y: 25},
{series: 'S2', x: '2016', y: 30},
{series: 'P1', x: '2017', y: 10},
{series: 'P1', x: '2018', y: 15},
{series: 'P1', x: '2019', y: 15},
{series: 'P2', x: '2017', y: 20},
{series: 'P2', x: '2018', y: 25},
{series: 'P2', x: '2019', y: 30}
];
var chart = new dimple.chart(svg);
var x = chart.addTimeAxis("x", ['x'], '%Y', '%Y');
x.timePeriod = d3.time.years;
x.timeInterval = 1;
var y = chart.addCategoryAxis("y", "y");
var s = chart.addSeries(['series'], dimple.plot.area);
s.stacked = true;
s.data = s1;
chart.assignClass('P1', 'future');
chart.assignClass('P2', 'future');
chart.draw();
s.shapes.on("click", function (e) {
s1.push({series: 'P1', x: '2016', y: 15});
s1.push({series: 'P2', x: '2016', y: 20});
chart.draw(1000);
});
спасибо!
спасибо за ваш ответ. Я пробовал подход добавления серии, но имел тот же результат. будет экспериментировать дальше. – davidm
Получил работу! спасибо за то, что я вернулся к этому подходу. – davidm