Временная шкала Vis - заставить подгруппу 2 следовать за подгруппой 1, используя порядок подгрупп - PullRequest
0 голосов
/ 28 декабря 2018

У меня есть временная шкала, в которой у меня есть 3 подгруппы 1, 2 и 3. В подгруппе 2 у меня есть 2 элемента с именами «B» и «BB».Я создал временную шкалу с заказным порядком подгруппы.На выходе я получаю BB сверху, затем элементы A и C ниже BB и, наконец, B в конце, даже когда BB и B совместно используют одну и ту же подгруппу 2. Вместо этого я хочу, чтобы A вышла на вершину, затемB и BB сгруппированы вместе ниже A и, наконец, C в конце.По сути, я хочу, чтобы подгруппы всегда выглядели как кластер и были вместе на временной шкале.

Ссылка на нерабочий пример - Демоверсия

HTML

<body>
  <div id="visualization"></div>
</body>

JS

function customSubgroupOrder(a, b) {
  return b.subgroup - a.subgroup;
}

var items = [{
  id: 1,
  group: "X",
  content: "A",
  subgroup: 1,
  start: "2016-01-01",
  end: "2016-01-31"
}, {
  id: 2,
  group: "X",
  content: "B",
  subgroup: 2,
  start: "2016-01-15",
  end: "2016-02-29"
}, {
  id: 4,
  group: "X",
  content: "BB",
  subgroup: 2,
  start: "2016-01-19",
  end: "2016-02-21"
}, {
  id: 3,
  group: "X",
  content: "C",
  subgroup: 3,
  start: "2016-02-15",
  end: "2016-02-29"
}];
var groups = [{
  id: "X",
  content: "Custom Ordering<br>Top-to-Bottom",
  subgroupOrder: customSubgroupOrder
}];
var options = {
  stack: true
};

var el = document.getElementById('visualization');
var timeline = new vis.Timeline(el, items, groups, options);

Любая помощь будет оценена.

1 Ответ

0 голосов
/ 21 февраля 2019

Вы должны добавить опцию subgroupStack:true в группу x, она будет размещать свои подгруппы поверх каждой.Рабочее демо можно найти здесь .

...